about summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--script.sh2
-rw-r--r--src/_locales/ar/messages.json15
-rw-r--r--src/_locales/de/messages.json15
-rw-r--r--src/_locales/en/messages.json15
-rw-r--r--src/assets/javascripts/helpers/common.js84
-rw-r--r--src/assets/javascripts/helpers/general.js28
-rw-r--r--src/assets/javascripts/helpers/imgur.js64
-rw-r--r--src/assets/javascripts/helpers/instagram.js80
-rw-r--r--src/assets/javascripts/helpers/lbry.js1
-rw-r--r--src/assets/javascripts/helpers/medium.js27
-rw-r--r--src/assets/javascripts/helpers/peertube.js21
-rw-r--r--src/assets/javascripts/helpers/reddit.js232
-rw-r--r--src/assets/javascripts/helpers/search.js281
-rw-r--r--src/assets/javascripts/helpers/sendTargets.js13
-rw-r--r--src/assets/javascripts/helpers/tiktok.js112
-rw-r--r--src/assets/javascripts/helpers/translate/lingva-preferences.js4
-rw-r--r--src/assets/javascripts/helpers/translate/translate.js99
-rw-r--r--src/assets/javascripts/helpers/twitter.js193
-rw-r--r--src/assets/javascripts/helpers/wikipedia.js95
-rw-r--r--src/assets/javascripts/helpers/youtube/get_piped_settings.js22
-rw-r--r--src/assets/javascripts/helpers/youtube/invidious.js133
-rw-r--r--src/assets/javascripts/helpers/youtube/piped-preferences.js65
-rw-r--r--src/assets/javascripts/helpers/youtube/piped.js98
-rw-r--r--src/assets/javascripts/helpers/youtube/youtube.js137
-rw-r--r--src/assets/javascripts/helpers/youtubeMusic.js2
-rw-r--r--src/instances/cloudflare.json1
-rw-r--r--src/instances/data.json15
-rw-r--r--src/instances/piped.json3
-rw-r--r--src/pages/background/background.js32
-rw-r--r--src/pages/options/general/general.html48
-rw-r--r--src/pages/options/general/general.js27
-rw-r--r--src/pages/options/general/general.pug8
-rw-r--r--src/pages/options/imgur/imgur.html40
-rw-r--r--src/pages/options/instagram/instagram.html40
-rw-r--r--src/pages/options/instagram/instagram.js24
-rw-r--r--src/pages/options/lbry/lbry.html40
-rw-r--r--src/pages/options/lbry/lbry.js28
-rw-r--r--src/pages/options/maps/maps.html40
-rw-r--r--src/pages/options/maps/maps.js29
-rw-r--r--src/pages/options/medium/medium.html40
-rw-r--r--src/pages/options/medium/medium.js24
-rw-r--r--src/pages/options/peertube/peertube.html40
-rw-r--r--src/pages/options/peertube/peertube.js28
-rw-r--r--src/pages/options/reddit/reddit.html59
-rw-r--r--src/pages/options/reddit/reddit.js58
-rw-r--r--src/pages/options/reddit/reddit.pug16
-rw-r--r--src/pages/options/search/search.html394
-rw-r--r--src/pages/options/search/search.js133
-rw-r--r--src/pages/options/search/search.pug333
-rw-r--r--src/pages/options/sendTargets/sendTargets.html40
-rw-r--r--src/pages/options/sendTargets/sendTargets.js23
-rw-r--r--src/pages/options/tiktok/tiktok.html66
-rw-r--r--src/pages/options/tiktok/tiktok.js44
-rw-r--r--src/pages/options/tiktok/tiktok.pug21
-rw-r--r--src/pages/options/translate/translate.html279
-rw-r--r--src/pages/options/translate/translate.js80
-rw-r--r--src/pages/options/translate/translate.pug25
-rw-r--r--src/pages/options/twitter/twitter.html126
-rw-r--r--src/pages/options/twitter/twitter.js118
-rw-r--r--src/pages/options/twitter/twitter.pug87
-rw-r--r--src/pages/options/wikipedia/wikipedia.html40
-rw-r--r--src/pages/options/youtube/invidious.js177
-rw-r--r--src/pages/options/youtube/piped.js152
-rw-r--r--src/pages/options/youtube/pipedMaterial.js125
-rw-r--r--src/pages/options/youtube/youtube.html1092
-rw-r--r--src/pages/options/youtube/youtube.js233
-rw-r--r--src/pages/options/youtube/youtube.pug647
-rw-r--r--src/pages/options/youtubeMusic/youtubeMusic.html40
-rw-r--r--src/pages/popup/popup.html291
-rw-r--r--src/pages/popup/popup.js108
-rw-r--r--src/pages/popup/popup.pug123
-rw-r--r--src/pages/stylesheets/styles.css6
-rw-r--r--src/pages/widgets/captions_options.pug130
-rw-r--r--src/pages/widgets/from-to.pug108
-rw-r--r--src/pages/widgets/icons.pug44
-rw-r--r--src/pages/widgets/links.pug25
77 files changed, 1795 insertions, 5795 deletions
diff --git a/README.md b/README.md
index 73338c1e..3d9fd705 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,7 @@ A web extension that redirects YouTube, Twitter, Instagram... requests to altern
 <img src ="./img/3.png" width=350>&nbsp;
 <img src ="./img/4.png" width=350>&nbsp;
 
-Youtube => [Piped](https://github.com/TeamPiped/Piped), [Invidious](https://github.com/iv-org/invidious), [Piped-Material](https://github.com/mmjee/Piped-Material), [FreeTube](https://github.com/FreeTubeApp/FreeTube), [Yattee](https://github.com/yattee/yattee)\
+Youtube => [Invidious](https://github.com/iv-org/invidious), [Piped](https://github.com/TeamPiped/Piped), [Piped-Material](https://github.com/mmjee/Piped-Material), [FreeTube](https://github.com/FreeTubeApp/FreeTube), [Yattee](https://github.com/yattee/yattee)\
 Youtube Music => [Beatbump](https://github.com/snuffyDev/Beatbump)\
 Twitter => [Nitter](https://github.com/zedeus/nitter)\
 Instagram => [Bibliogram](https://sr.ht/~cadence/bibliogram/)\
diff --git a/script.sh b/script.sh
index 6856920c..431533ca 100644
--- a/script.sh
+++ b/script.sh
@@ -1 +1 @@
-pug ./src/pages/options/ -P -w
\ No newline at end of file
+pug ./src/pages/options/ ./src/pages/popup/ -P -w
\ No newline at end of file
diff --git a/src/_locales/ar/messages.json b/src/_locales/ar/messages.json
index 731217c1..9382d0c1 100644
--- a/src/_locales/ar/messages.json
+++ b/src/_locales/ar/messages.json
@@ -219,11 +219,6 @@
       "description": "used in reddit.html"
     },
 
-    "bypassReddit": {
-      "message": "تجاوز \"Open in Reddit\"",
-      "description": "used in reddit.html"
-    },
-
     "searchNote": {
       "message": "ملاحظة: لاستعمال \"البحث\" بكامل إمكانيته، اجعل LibRedirect محرك البحث الافتراضي",
       "description": "used in search.html"
@@ -264,11 +259,6 @@
       "description": "used in translate.html"
     },
 
-    "bypassTwitter": {
-      "message": "تجاوز \"Open in Twitter\"",
-      "description": "used in twitter.html"
-    },
-
     "embeddedVids": {
       "message": "واجهة الفيديوهات المضمنة",
       "description": "used in youtube.html"
@@ -294,11 +284,6 @@
       "description": "used in youtube.html"
     },
 
-    "bypassYoutube": {
-      "message": "تجاوز \"Watch on YouTube\"",
-      "description": "used in youtube.html"
-    },
-
     "enableCustom": {
       "message": "تمكين الإعدادات الخاصة (ستُستخدم ملفات تعريف الارتباط والـlocalStorage)",
       "description": "used in youtube.html"
diff --git a/src/_locales/de/messages.json b/src/_locales/de/messages.json
index 700e15db..b7a9d26d 100644
--- a/src/_locales/de/messages.json
+++ b/src/_locales/de/messages.json
@@ -219,11 +219,6 @@
     "description": "used in reddit.html"
   },
 
-  "bypassReddit": {
-    "message": "„Öffnen mit Reddit“ umgehen",
-    "description": "used in reddit.html"
-  },
-
   "searchNote": {
     "message": "Hinweis: Um das volle Potenzial der Suchweiterleitung auszunutzen, lege LibRedirect als Standardsuchmaschine fest.",
     "description": "used in search.html"
@@ -264,11 +259,6 @@
     "description": "used in translate.html"
   },
 
-  "bypassTwitter": {
-    "message": "„Öffnen mit Twitter“ umgehen",
-    "description": "used in twitter.html"
-  },
-
   "invidious": {
     "message": "Invidious",
     "description": "used in youtube.html"
@@ -299,11 +289,6 @@
     "description": "used in youtube.html"
   },
 
-  "bypassYoutube": {
-    "message": "„Auf YouTube ansehen“ umgehen",
-    "description": "used in youtube.html"
-  },
-
   "enableCustom": {
     "message": "Aktiviere benutzerdefinierte Einstellungen (verwendet Cookies und localStorage)",
     "description": "used in youtube.html"
diff --git a/src/_locales/en/messages.json b/src/_locales/en/messages.json
index c52dff61..3507eb3a 100644
--- a/src/_locales/en/messages.json
+++ b/src/_locales/en/messages.json
@@ -219,11 +219,6 @@
     "description": "used in reddit.html"
   },
 
-  "bypassReddit": {
-    "message": "Bypass \"Open in Reddit\"",
-    "description": "used in reddit.html"
-  },
-
   "searchNote": {
     "message": "Note: To use Search to its full potential, make LibRedirect as the Default Search Engine",
     "description": "used in search.html"
@@ -264,11 +259,6 @@
     "description": "used in translate.html"
   },
 
-  "bypassTwitter": {
-    "message": "Bypass \"Open in Twitter\"",
-    "description": "used in twitter.html"
-  },
-
   "invidious": {
     "message": "Invidious",
     "description": "used in youtube.html"
@@ -299,11 +289,6 @@
     "description": "used in youtube.html"
   },
 
-  "bypassYoutube": {
-    "message": "Bypass \"Watch on YouTube\"",
-    "description": "used in youtube.html"
-  },
-
   "enableCustom": {
     "message": "Enable Custom Settings (will use cookies and localStorage)",
     "description": "used in youtube.html"
diff --git a/src/assets/javascripts/helpers/common.js b/src/assets/javascripts/helpers/common.js
index f0da54c9..6e1c71ff 100644
--- a/src/assets/javascripts/helpers/common.js
+++ b/src/assets/javascripts/helpers/common.js
@@ -40,16 +40,13 @@ async function wholeInit() {
 }
 
 async function updateInstances() {
-  const apiEndpoint = 'https://raw.githubusercontent.com/libredirect/libredirect/master/src/instances/data.json';
-  let request = new XMLHttpRequest();
-  request.open('GET', apiEndpoint, false);
-  request.send(null);
-
-  if (request.status === 200) {
+  let http = new XMLHttpRequest();
+  http.open('GET', 'https://raw.githubusercontent.com/libredirect/libredirect/master/src/instances/data.json', false);
+  http.send(null);
 
+  if (http.status === 200) {
     await wholeInit();
-
-    const instances = JSON.parse(request.responseText);
+    const instances = JSON.parse(http.responseText);
 
     brwoser.storage.local.get(
       [
@@ -98,12 +95,7 @@ function protocolHost(url) {
   return `${url.protocol}//${url.host}`;
 }
 
-async function processDefaultCustomInstances(
-  target,
-  name,
-  protocol,
-  document,
-) {
+async function processDefaultCustomInstances(target, name, protocol, document) {
   function camelCase(str) {
     return str.charAt(0).toUpperCase() + str.slice(1);
   }
@@ -117,7 +109,6 @@ async function processDefaultCustomInstances(
 
   await initCloudflareList();
 
-
   let nameDefaultRedirects;
 
   let redirectsChecks = `${name}${camelCase(protocol)}RedirectsChecks`;
@@ -250,21 +241,39 @@ function isRtl() {
   return ["ar", "iw", "ku", "fa", "ur"].includes(browser.i18n.getUILanguage())
 }
 
-async function ping(href) {
+function getIp(href) {
   return new Promise(resolve => {
+    let host = new URL(href).hostname;
+    let http = new XMLHttpRequest();
+    http.open("GET", `https://dns.google/resolve?name=${host}`, /*async*/true);
+    http.onreadystatechange = () => {
+      if (http.readyState == 4 && http.status == 200) {
+        let r = JSON.parse(http.responseText);
+        resolve(r.Answer[0].data)
+      }
+    };
+    http.ontimeout = () => resolve()
+    http.onerror = () => resolve()
+    try {
+      http.send(null)
+    }
+    catch (exception) {
+      resolve()
+    }
+  })
+}
+
+async function ping(href) {
+  return new Promise(async resolve => {
     let http = new XMLHttpRequest();
-    http.open("GET", href + '?_=' + new Date().getTime(), /*async*/true);
+    http.open("GET", `${href}?_=${new Date().getTime()}`, /*async*/true);
     http.timeout = 5000;
     let started = new Date().getTime();
-    http.onreadystatechange = function () {
+    http.onreadystatechange = () => {
       if (http.readyState == 2) {
-        if (http.status == 200) {
-          let ended = new Date().getTime();
-          let ms = ended - started;
-          http.abort();
-          resolve(ms);
-        }
-        else resolve()
+        let ended = new Date().getTime();
+        http.abort();
+        resolve(ended - started);
       }
     };
     http.ontimeout = () => resolve(5000)
@@ -283,19 +292,33 @@ async function testLatency(element, instances) {
     for (const href of instances) await ping(href).then(m => {
       if (m) {
         myList[href] = m;
-        element.innerHTML = `${href}:&nbsp;${'<span style="color:' + (m <= 1000 ? "green" : m <= 2000 ? "orange" : "red") + ';">' + (m == 5000 ? '5000ms+' : m + 'ms') + '</span>'}`;
-        console.log(`${href}: ${m}ms`)
+        let color = m <= 1000 ? "green" : m <= 2000 ? "orange" : "red";
+        let text = m == 5000 ? '5000ms+' : m + 'ms';
+        element.innerHTML = `${href}:&nbsp;'<span style="color:${color};">${text}</span>`;
       }
     })
     resolve(myList);
   })
 }
 
-function copyCookie(targetUrl, url, name) {
+function copyCookie(frontend, targetUrl, url, name) {
   browser.cookies.get(
     { url: protocolHost(targetUrl), name: name },
     r => {
-      if (r) browser.cookies.set({ url: url, name: name, value: r.value })
+      if (r) {
+        browser.cookies.set({ url: url, name: name, value: r.value })
+        browser.storage.local.set({ [`${frontend}_${name}`]: r.value })
+      }
+    }
+  )
+}
+
+function getCookiesFromStorage(frontend, to, name) {
+  let key = `${frontend}_${name}`;
+  browser.storage.local.get(
+    key,
+    r => {
+      if (r) browser.cookies.set({ url: to, name: name, value: r[key] })
     }
   )
 }
@@ -307,5 +330,6 @@ export default {
   processDefaultCustomInstances,
   isRtl,
   testLatency,
-  copyCookie
+  copyCookie,
+  getCookiesFromStorage,
 }
diff --git a/src/assets/javascripts/helpers/general.js b/src/assets/javascripts/helpers/general.js
index b6570629..fdc60643 100644
--- a/src/assets/javascripts/helpers/general.js
+++ b/src/assets/javascripts/helpers/general.js
@@ -1,14 +1,6 @@
 "use strict";
 window.browser = window.browser || window.chrome;
 
-let alwaysUsePreferred;
-const getAlwaysUsePreferred = () => alwaysUsePreferred;
-function setAlwaysUsePreferred(val) {
-    alwaysUsePreferred = val;
-    browser.storage.local.set({ alwaysUsePreferred })
-    console.log("alwaysUsePreferred: ", alwaysUsePreferred)
-}
-
 let theme;
 const getTheme = () => theme;
 function setTheme(val) {
@@ -17,14 +9,6 @@ function setTheme(val) {
     console.log("theme: ", theme)
 }
 
-let applyThemeToSites;
-const getApplyThemeToSites = () => applyThemeToSites;
-function setApplyThemeToSites(val) {
-    applyThemeToSites = val;
-    browser.storage.local.set({ applyThemeToSites })
-    console.log("applyThemeToSites: ", applyThemeToSites)
-}
-
 let exceptions = {
     "url": [],
     "regex": [],
@@ -59,18 +43,14 @@ async function init() {
         resolve => browser.storage.local.get(
             [
                 "exceptions",
-                "alwaysUsePreferred",
                 "theme",
-                "applyThemeToSites",
                 "popupFrontends",
                 "autoRedirect"
             ],
-            r => { 
+            r => {
                 if (r.exceptions) exceptions = r.exceptions;
-                alwaysUsePreferred = r.alwaysUsePreferred ?? false;
 
                 theme = r.theme ?? "DEFAULT"
-                applyThemeToSites = r.applyThemeToSites ?? false;
 
                 popupFrontends = r.popupFrontends ?? [
                     "youtube",
@@ -128,12 +108,6 @@ export default {
     getAutoRedirect,
     setAutoRedirect,
 
-    getAlwaysUsePreferred,
-    setAlwaysUsePreferred,
-
-    getApplyThemeToSites,
-    setApplyThemeToSites,
-
     getPopupFrontends,
     setPopupFrontends,
 
diff --git a/src/assets/javascripts/helpers/imgur.js b/src/assets/javascripts/helpers/imgur.js
index f581a75a..8f8c28e9 100644
--- a/src/assets/javascripts/helpers/imgur.js
+++ b/src/assets/javascripts/helpers/imgur.js
@@ -52,21 +52,8 @@ let
     rimgoI2pCustomRedirects;
 
 function redirect(url, type, initiator) {
-    // https://imgur.com/gallery/s4WXQmn
-    // https://imgur.com/a/H8M4rcp
-    // https://imgur.com/gallery/gYiQLWy
-    // https://imgur.com/gallery/cTRwaJU
-    // https://i.imgur.com/CFSQArP.jpeg
-
     if (disable) return;
-    if (url.pathname == "/") false;
-    if (
-        initiator &&
-        ([...redirects.rimgo.normal, ...rimgoNormalCustomRedirects].includes(initiator.origin) || targets.test(initiator.host))
-    ) return;
-    if (!targets.test(url.href)) return;
-
-
+    if (url.pathname == "/") return;
     if (![
         "main_frame",
         "sub_frame",
@@ -74,10 +61,19 @@ function redirect(url, type, initiator) {
         "other",
         "image",
         "media",
-    ].includes(type)) return null;
-
-    if (url.pathname.includes("delete/")) return null;
+    ].includes(type)) return;
+    if (
+        initiator &&
+        ([...redirects.rimgo.normal, ...rimgoNormalCustomRedirects].includes(initiator.origin) || targets.test(initiator.host))
+    ) return;
+    if (!targets.test(url.href)) return;
+    if (url.pathname.includes("delete/")) return;
 
+    // https://imgur.com/gallery/s4WXQmn
+    // https://imgur.com/a/H8M4rcp
+    // https://imgur.com/gallery/gYiQLWy
+    // https://imgur.com/gallery/cTRwaJU
+    // https://i.imgur.com/CFSQArP.jpeg
     let instancesList;
     if (protocol == 'normal') instancesList = [...rimgoNormalRedirectsChecks, ...rimgoNormalCustomRedirects];
     if (protocol == 'tor') instancesList = [...rimgoTorRedirectsChecks, ...rimgoTorCustomRedirects];
@@ -88,17 +84,29 @@ function redirect(url, type, initiator) {
     return `${randomInstance}${url.pathname}${url.search}`;
 }
 
-function reverse(url) {
-    let protocolHost = commonHelper.protocolHost(url);
-    if (
-        ![...redirects.rimgo.normal,
-        ...redirects.rimgo.tor,
-        ...redirects.rimgo.i2p,
-        ...rimgoNormalCustomRedirects,
-        ...rimgoTorCustomRedirects,
-        ...rimgoI2pCustomRedirects].includes(protocolHost)
-    ) return;
-    return `https://imgur.com${url.pathname}${url.search}`;
+async function reverse(url) {
+    browser.storage.local.get(
+        [
+            "imgurRedirects",
+            "rimgoNormalCustomRedirects",
+            "rimgoTorCustomRedirects",
+            "rimgoI2pCustomRedirects",
+        ],
+        r => {
+            let protocolHost = commonHelper.protocolHost(url);
+            if (
+                ![
+                    ...r.imgurRedirects.rimgo.normal,
+                    ...r.imgurRedirects.rimgo.tor,
+                    ...r.imgurRedirects.rimgo.i2p,
+                    ...r.rimgoNormalCustomRedirects,
+                    ...r.rimgoTorCustomRedirects,
+                    ...r.rimgoI2pCustomRedirects
+                ].includes(protocolHost)
+            ) return;
+            return `https://imgur.com${url.pathname}${url.search}`;
+        }
+    )
 }
 
 function switchInstance(url) {
diff --git a/src/assets/javascripts/helpers/instagram.js b/src/assets/javascripts/helpers/instagram.js
index ca6097dd..effbe46c 100644
--- a/src/assets/javascripts/helpers/instagram.js
+++ b/src/assets/javascripts/helpers/instagram.js
@@ -84,21 +84,33 @@ function redirect(url, type, initiator) {
     return `${randomInstance}/u${url.pathname}${url.search}`; // Likely a user profile, redirect to '/u/...'
 }
 
-function reverse(url) {
-  let protocolHost = commonHelper.protocolHost(url);
-  if (
-    ![...redirects.bibliogram.normal,
-    ...redirects.bibliogram.tor,
-    ...bibliogramNormalCustomRedirects,
-    ...bibliogramTorCustomRedirects].includes(protocolHost)
-  ) return;
-  if (url.pathname.startsWith('/p'))
-    return `https://instagram.com${url.pathname.replace('/p', '')}${url.search}`;
-
-  if (url.pathname.startsWith('/u'))
-    return `https://instagram.com${url.pathname.replace('/u', '')}${url.search}`;
-
-  return `https://instagram.com${url.pathname}${url.search}`;
+async function reverse(url) {
+  browser.storage.local.get(
+    [
+      "instagramRedirects",
+      "bibliogramNormalCustomRedirects",
+      "bibliogramTorCustomRedirects",
+    ],
+    r => {
+      let protocolHost = commonHelper.protocolHost(url);
+      if (
+        ![
+          ...r.instagramRedirects.bibliogram.normal,
+          ...r.instagramRedirects.bibliogram.tor,
+          ...r.bibliogramNormalCustomRedirects,
+          ...r.bibliogramTorCustomRedirects
+        ].includes(protocolHost)
+      ) return;
+
+      if (url.pathname.startsWith('/p'))
+        return `https://instagram.com${url.pathname.replace('/p', '')}${url.search}`;
+
+      if (url.pathname.startsWith('/u'))
+        return `https://instagram.com${url.pathname.replace('/u', '')}${url.search}`;
+
+      return `https://instagram.com${url.pathname}${url.search}`;
+    }
+  )
 }
 
 function switchInstance(url) {
@@ -139,7 +151,6 @@ function isBibliogram(url) {
 
 let instancesCookies;
 let theme;
-let applyThemeToSites;
 function initBibliogramCookies(url) {
   let protocolHost = commonHelper.protocolHost(url);
   browser.cookies.get(
@@ -150,17 +161,15 @@ function initBibliogramCookies(url) {
         let request = new XMLHttpRequest();
         request.open("POST", `${protocolHost}/settings/return?referrer=%2F`);
 
-        if (applyThemeToSites) {
-          let themeValue;
-          if (theme == 'light') themeValue = "classic";
-          if (theme == 'dark') themeValue = "pussthecat.org-v2"
-
-          if (themeValue) {
-            let data = `csrf=x&theme=${themeValue}`;
-            request.send(data);
-            if (!instancesCookies.includes(protocolHost)) instancesCookies.push(protocolHost);
-            browser.storage.local.set({ instancesCookies })
-          }
+        let themeValue;
+        if (theme == 'light') themeValue = "classic";
+        if (theme == 'dark') themeValue = "pussthecat.org-v2"
+
+        if (themeValue) {
+          let data = `csrf=x&theme=${themeValue}`;
+          request.send(data);
+          if (!instancesCookies.includes(protocolHost)) instancesCookies.push(protocolHost);
+          browser.storage.local.set({ instancesCookies })
         }
       }
     })
@@ -168,25 +177,22 @@ function initBibliogramCookies(url) {
 }
 
 
-async function initDefaults() {
-  return new Promise(async resolve => {
-    fetch('/instances/data.json').then(response => response.text()).then(async data => {
+function initDefaults() {
+  return new Promise(resolve => {
+    fetch('/instances/data.json').then(response => response.text()).then(data => {
       let dataJson = JSON.parse(data);
       redirects.bibliogram = dataJson.bibliogram;
-      browser.storage.local.get('cloudflareList', async r => {
+      browser.storage.local.get('cloudflareList', r => {
         bibliogramNormalRedirectsChecks = [...redirects.bibliogram.normal];
         for (const instance of r.cloudflareList) {
-          let i;
-
-          i = bibliogramNormalRedirectsChecks.indexOf(instance);
+          let i = bibliogramNormalRedirectsChecks.indexOf(instance);
           if (i > -1) bibliogramNormalRedirectsChecks.splice(i, 1);
         }
-        await browser.storage.local.set({
+        browser.storage.local.set({
           disableInstagram: false,
           instagramRedirects: redirects,
 
           theme: 'DEFAULT',
-          applyThemeToSites: false,
 
           instancesCookies: [],
 
@@ -212,7 +218,6 @@ async function init() {
         "instagramRedirects",
 
         "theme",
-        "applyThemeToSites",
 
         "instancesCookies",
 
@@ -228,7 +233,6 @@ async function init() {
         if (r.instagramRedirects) redirects = r.instagramRedirects
 
         theme = r.theme;
-        applyThemeToSites = r.applyThemeToSites;
 
         instancesCookies = r.instancesCookies;
 
diff --git a/src/assets/javascripts/helpers/lbry.js b/src/assets/javascripts/helpers/lbry.js
index b82ae9ad..6010574e 100644
--- a/src/assets/javascripts/helpers/lbry.js
+++ b/src/assets/javascripts/helpers/lbry.js
@@ -118,7 +118,6 @@ async function initDefaults() {
     })
 }
 
-
 async function init() {
     return new Promise(resolve => {
         browser.storage.local.get(
diff --git a/src/assets/javascripts/helpers/medium.js b/src/assets/javascripts/helpers/medium.js
index 99a14cca..5306f478 100644
--- a/src/assets/javascripts/helpers/medium.js
+++ b/src/assets/javascripts/helpers/medium.js
@@ -35,18 +35,9 @@ let redirects = {
   }
 };
 const getRedirects = () => redirects;
-const getCustomRedirects = function () {
-  return {
-    "scribe": {
-      "normal": [...scribeNormalRedirectsChecks, ...scribeNormalCustomRedirects],
-      "tor": [...scribeTorRedirectsChecks, ...scribeTorCustomRedirects]
-    },
-  };
-};
 function setRedirects(val) {
   redirects.scribe = val;
   browser.storage.local.set({ mediumRedirects: redirects })
-  console.log("mediumRedirects: ", val)
   for (const item of scribeNormalRedirectsChecks) if (!redirects.scribe.normal.includes(item)) {
     var index = scribeNormalRedirectsChecks.indexOf(item);
     if (index !== -1) scribeNormalRedirectsChecks.splice(index, 1);
@@ -78,12 +69,11 @@ function redirect(url, type, initiator) {
 
   if (disable) return;
 
-  if (type != "main_frame" && "sub_frame" && "xmlhttprequest" && "other") return null;
+  if (type != "main_frame" && "sub_frame" && "xmlhttprequest" && "other") return;
 
   if (initiator && ([...redirects.scribe.normal, ...scribeNormalCustomRedirects].includes(initiator.origin))) return;
 
   if (!targets.some(rx => rx.test(url.host))) return;
-  console.log('url.pathname', url.pathname);
   if (/^\/($|@[a-zA-Z.]{0,}(\/|)$)/.test(url.pathname)) return;
 
   let instancesList;
@@ -112,7 +102,6 @@ function switchInstance(url) {
   if (protocol == 'normal') instancesList = [...scribeNormalCustomRedirects, ...scribeNormalRedirectsChecks];
   else if (protocol == 'tor') instancesList = [...scribeTorCustomRedirects, ...scribeTorRedirectsChecks];
 
-  console.log("instancesList", instancesList);
   let index = instancesList.indexOf(protocolHost);
   if (index > -1) instancesList.splice(index, 1);
 
@@ -122,17 +111,17 @@ function switchInstance(url) {
   return `${randomInstance}${url.pathname}${url.search}`;
 }
 
-async function initDefaults() {
-  fetch('/instances/data.json').then(response => response.text()).then(async data => {
+function initDefaults() {
+  fetch('/instances/data.json').then(response => response.text()).then(data => {
     let dataJson = JSON.parse(data);
     redirects.scribe = dataJson.scribe;
-    browser.storage.local.get('cloudflareList', async r => {
+    browser.storage.local.get('cloudflareList', r => {
       scribeNormalRedirectsChecks = [...redirects.scribe.normal];
       for (const instance of r.cloudflareList) {
         let i = scribeNormalRedirectsChecks.indexOf(instance);
         if (i > -1) scribeNormalRedirectsChecks.splice(i, 1);
       }
-      await browser.storage.local.set({
+      browser.storage.local.set({
         disableMedium: false,
         mediumRedirects: redirects,
 
@@ -162,10 +151,7 @@ async function init() {
       ],
       r => {
         disable = r.disableMedium;
-
         protocol = r.mediumProtocol;
-
-
         redirects = r.mediumRedirects;
 
         scribeNormalRedirectsChecks = r.scribeNormalRedirectsChecks;
@@ -181,10 +167,7 @@ async function init() {
 }
 
 export default {
-  targets,
-
   getRedirects,
-  getCustomRedirects,
   setRedirects,
 
   redirect,
diff --git a/src/assets/javascripts/helpers/peertube.js b/src/assets/javascripts/helpers/peertube.js
index 14dda0b1..7fca2b61 100644
--- a/src/assets/javascripts/helpers/peertube.js
+++ b/src/assets/javascripts/helpers/peertube.js
@@ -73,11 +73,18 @@ function switchInstance(url) {
 }
 
 function redirect(url, type, initiator) {
-
-    let protocolHost = commonHelper.protocolHost(url);
-
     if (disable) return null;
-    if (initiator && ([...redirects.simpleertube.normal, ...simpleertubeNormalCustomRedirects].includes(initiator.origin) || targets.includes(initiator.host))) return null;
+    if (
+        initiator &&
+        (
+            [
+                ...redirects.simpleertube.normal,
+                ...simpleertubeNormalCustomRedirects
+            ].includes(initiator.origin) ||
+            targets.includes(initiator.host)
+        )
+    ) return null;
+    let protocolHost = commonHelper.protocolHost(url);
     if (!targets.includes(protocolHost)) return null;
 
     if (type != "main_frame") return null;
@@ -104,9 +111,7 @@ async function initDefaults() {
             }
             await browser.storage.local.set({
                 peerTubeTargets: ['https://search.joinpeertube.org', ...dataJson.peertube],
-
                 disablePeertubeTargets: true,
-
                 peertubeRedirects: redirects,
 
                 simpleertubeNormalRedirectsChecks: simpleertubeNormalRedirectsChecks,
@@ -132,14 +137,11 @@ async function init() {
             "simpleertubeTorCustomRedirects",
 
             "peerTubeTargets",
-
             "peertubeTargetsProtocol"
         ],
         r => {
             disable = r.disablePeertubeTargets;
-
             protocol = r.peertubeTargetsProtocol;
-
             targets = r.peerTubeTargets;
 
             simpleertubeNormalRedirectsChecks = r.simpleertubeNormalRedirectsChecks;
@@ -152,7 +154,6 @@ async function init() {
 }
 
 export default {
-
     getRedirects,
     setRedirects,
 
diff --git a/src/assets/javascripts/helpers/reddit.js b/src/assets/javascripts/helpers/reddit.js
index 04ac2a4b..bbcaf872 100644
--- a/src/assets/javascripts/helpers/reddit.js
+++ b/src/assets/javascripts/helpers/reddit.js
@@ -17,18 +17,6 @@ let redirects = {
   },
 };
 const getRedirects = () => redirects;
-const getCustomRedirects = function () {
-  return {
-    "libreddit": {
-      "normal": [...libredditNormalRedirectsChecks, ...libredditNormalCustomRedirects],
-      "tor": [...libredditTorRedirectsChecks, ...libredditTorCustomRedirects]
-    },
-    "teddit": {
-      "normal": [...tedditNormalRedirectsChecks, ...tedditNormalCustomRedirects],
-      "tor": [...tedditTorRedirectsChecks, ...tedditTorCustomRedirects]
-    }
-  };
-};
 
 function setLibredditRedirects(val) {
   redirects.libreddit = val;
@@ -80,63 +68,93 @@ let tedditTorCustomRedirects = [];
 
 const bypassPaths = /\/(gallery\/poll\/rpan\/settings\/topics)/;
 
-let disableReddit;
-const getDisableReddit = () => disableReddit;
-function setDisableReddit(val) {
-  disableReddit = val;
-  browser.storage.local.set({ disableReddit })
-}
+let
+  disableReddit,
+  frontend,
+  protocol;
 
-let frontend;
-let protocol;
-let bypassWatchOnReddit;
-
-function initLibredditCookies(targetUrl) {
-  browser.storage.local.get(
-    [
-      "redditProtocol",
-      "libredditNormalRedirectsChecks",
-      "libredditNormalCustomRedirects",
-      "libredditTorRedirectsChecks",
-      "libredditTorCustomRedirects",
-    ],
-    r => {
-      let checkedInstances;
-      if (r.redditProtocol == 'normal') checkedInstances = [...r.libredditNormalRedirectsChecks, ...r.libredditNormalCustomRedirects];
-      else if (r.redditProtocol == 'tor') checkedInstances = [...r.libredditTorRedirectsChecks, ...r.libredditTorCustomRedirects];
-
-      for (const instance of checkedInstances) {
-        commonHelper.copyCookie(targetUrl, instance, "theme");
-        commonHelper.copyCookie(targetUrl, instance, "front_page");
-        commonHelper.copyCookie(targetUrl, instance, "layout");
-        commonHelper.copyCookie(targetUrl, instance, "wide");
-        commonHelper.copyCookie(targetUrl, instance, "post_sort");
-        commonHelper.copyCookie(targetUrl, instance, "comment_sort");
-        commonHelper.copyCookie(targetUrl, instance, "show_nsfw");
-        commonHelper.copyCookie(targetUrl, instance, "autoplay_videos");
-        commonHelper.copyCookie(targetUrl, instance, "use_hls");
-        commonHelper.copyCookie(targetUrl, instance, "hide_hls_notification");
+function initLibredditCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "redditProtocol",
+        "libredditNormalRedirectsChecks",
+        "libredditNormalCustomRedirects",
+        "libredditTorRedirectsChecks",
+        "libredditTorCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.libredditNormalRedirectsChecks,
+          ...r.libredditTorRedirectsChecks,
+          ...r.libredditNormalCustomRedirects,
+          ...r.libredditTorCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (r.redditProtocol == 'normal') checkedInstances = [...r.libredditNormalRedirectsChecks, ...r.libredditNormalCustomRedirects];
+        else if (r.redditProtocol == 'tor') checkedInstances = [...r.libredditTorRedirectsChecks, ...r.libredditTorCustomRedirects];
+        for (const to of checkedInstances) {
+          commonHelper.copyCookie('libreddit', from, to, "theme");
+          commonHelper.copyCookie('libreddit', from, to, "front_page");
+          commonHelper.copyCookie('libreddit', from, to, "layout");
+          commonHelper.copyCookie('libreddit', from, to, "wide");
+          commonHelper.copyCookie('libreddit', from, to, "post_sort");
+          commonHelper.copyCookie('libreddit', from, to, "comment_sort");
+          commonHelper.copyCookie('libreddit', from, to, "show_nsfw");
+          commonHelper.copyCookie('libreddit', from, to, "autoplay_videos");
+          commonHelper.copyCookie('libreddit', from, to, "use_hls");
+          commonHelper.copyCookie('libreddit', from, to, "hide_hls_notification");
+        }
+        resolve(true);
       }
-    }
-  )
-}
+    )
+  })
 
-function initTedditCookies() {
-  let checkedInstances = [
-    ...tedditNormalRedirectsChecks,
-    ...tedditNormalCustomRedirects,
-    ...tedditTorRedirectsChecks,
-    ...tedditTorCustomRedirects
-  ]
-  for (const instanceUrl of checkedInstances)
-    browser.cookies.set({
-      url: instanceUrl,
-      name: "theme",
-      value: theme == 'dark' ? 'dark' : 'white'
-    })
 }
 
-let alwaysUsePreferred;
+function initTedditCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "redditProtocol",
+        "tedditNormalRedirectsChecks",
+        "tedditNormalCustomRedirects",
+        "tedditTorRedirectsChecks",
+        "tedditTorCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.tedditNormalRedirectsChecks,
+          ...r.tedditTorRedirectsChecks,
+          ...r.tedditNormalCustomRedirects,
+          ...r.tedditTorCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (r.redditProtocol == 'normal') checkedInstances = [...r.tedditNormalRedirectsChecks, ...r.tedditNormalCustomRedirects]
+        else if (r.redditProtocol == 'tor') checkedInstances = [...r.tedditTorRedirectsChecks, ...r.tedditTorCustomRedirects]
+        for (const to of checkedInstances) {
+          commonHelper.copyCookie('teddit', from, to, 'collapse_child_comments')
+          commonHelper.copyCookie('teddit', from, to, 'domain_instagram')
+          commonHelper.copyCookie('teddit', from, to, 'domain_twitter')
+          commonHelper.copyCookie('teddit', from, to, 'domain_youtube')
+          commonHelper.copyCookie('teddit', from, to, 'flairs')
+          commonHelper.copyCookie('teddit', from, to, 'highlight_controversial')
+          commonHelper.copyCookie('teddit', from, to, 'nsfw_enabled')
+          commonHelper.copyCookie('teddit', from, to, 'post_media_max_height')
+          commonHelper.copyCookie('teddit', from, to, 'show_upvoted_percentage')
+          commonHelper.copyCookie('teddit', from, to, 'show_upvotes')
+          commonHelper.copyCookie('teddit', from, to, 'theme')
+          commonHelper.copyCookie('teddit', from, to, 'videos_muted')
+        }
+        resolve(true);
+      }
+    )
+  })
+}
 
 function redirect(url, type, initiator) {
   // https://libreddit.exonip.de/vid/1mq8d0ma3yk81/720.mp4
@@ -151,47 +169,9 @@ function redirect(url, type, initiator) {
   // https://i.redd.it/bfkhs659tzk81.jpg
 
   if (disableReddit) return null;
-
-  let protocolHost = commonHelper.protocolHost(url);
-
-  let isTeddit = [
-    ...redirects.teddit.normal,
-    ...redirects.teddit.tor
-  ].includes(protocolHost);
-
-  let isCheckedTeddit = [
-    ...tedditNormalRedirectsChecks,
-    ...tedditNormalCustomRedirects,
-    ...tedditTorRedirectsChecks,
-    ...tedditTorCustomRedirects,
-  ].includes(protocolHost);
-
-  let isLibreddit = [
-    ...redirects.libreddit.normal,
-    ...redirects.libreddit.tor
-  ].includes(protocolHost);
-
-  let isCheckedLibreddit = [
-    ...libredditNormalRedirectsChecks,
-    ...libredditNormalCustomRedirects,
-    ...libredditTorRedirectsChecks,
-    ...libredditTorCustomRedirects,
-  ].includes(protocolHost)
-
-  if (
-    alwaysUsePreferred && frontend == 'teddit' &&
-    (isTeddit || isLibreddit) && !isCheckedTeddit
-  ) return switchInstance(url);
-
-  if (
-    alwaysUsePreferred && frontend == 'libreddit' &&
-    (isTeddit || isLibreddit) && !isCheckedLibreddit
-  ) return switchInstance(url);
-
   if (!targets.some(rx => rx.test(url.href))) return null;
 
   if (
-    bypassWatchOnReddit &&
     initiator &&
     [...redirects.libreddit.normal,
     ...redirects.libreddit.tor,
@@ -320,10 +300,7 @@ async function switchInstance(url) {
           ...r.tedditNormalCustomRedirects,
           ...r.tedditTorCustomRedirects,
         ]
-
         if (!redditList.includes(protocolHost)) return null;
-
-        console.log('redditFrontend', r.redditFrontend)
         let instancesList;
         if (r.redditFrontend == 'libreddit') {
           if (r.redditProtocol == 'normal') instancesList = [...r.libredditNormalRedirectsChecks, ...r.libredditNormalCustomRedirects];
@@ -346,7 +323,6 @@ async function switchInstance(url) {
       }
     )
   })
-
 }
 
 async function initDefaults() {
@@ -370,10 +346,6 @@ async function initDefaults() {
         disableReddit: false,
         redditProtocol: 'normal',
         redditFrontend: 'libreddit',
-
-        bypassWatchOnReddit: true,
-        alwaysUsePreferred: false,
-
         redditRedirects: redirects,
 
         libredditNormalRedirectsChecks: libredditNormalRedirectsChecks,
@@ -387,18 +359,6 @@ async function initDefaults() {
 
         tedditTorRedirectsChecks: [...redirects.teddit.tor],
         tedditTorCustomRedirects: [],
-
-        enableLibredditCustomSettings: false,
-
-        redditTheme: 'system',
-        redditFrontPage: 'default',
-        redditLayout: 'card',
-        redditWide: false,
-        redditPostSort: 'hot',
-        redditCommentSort: 'confidence',
-        redditShowNsfw: false,
-        redditUseHls: false,
-        redditHideHlsNotification: false,
       });
     });
   });
@@ -411,6 +371,7 @@ async function init() {
         "disableReddit",
         "redditFrontend",
         "redditRedirects",
+        "redditProtocol",
 
         "libredditNormalRedirectsChecks",
         "libredditNormalCustomRedirects",
@@ -421,32 +382,10 @@ async function init() {
         "tedditNormalCustomRedirects",
         "tedditTorRedirectsChecks",
         "tedditTorCustomRedirects",
-
-        "redditProtocol",
-        "bypassWatchOnReddit",
-
-        "alwaysUsePreferred",
-
-        "enableLibredditCustomSettings",
-
-        "redditTheme",
-        "redditFrontPage",
-        "redditLayout",
-        "redditWide",
-        "redditPostSort",
-        "redditCommentSort",
-        "redditShowNsfw",
-        "redditAutoplayVideos",
-        "redditUseHls",
-        "redditHideHlsNotification",
       ], r => {
         disableReddit = r.disableReddit;
         protocol = r.redditProtocol;
         frontend = r.redditFrontend;
-
-        bypassWatchOnReddit = r.bypassWatchOnReddit;
-        alwaysUsePreferred = r.alwaysUsePreferred;
-
         redirects = r.redditRedirects;
 
         libredditNormalRedirectsChecks = r.libredditNormalRedirectsChecks;
@@ -468,15 +407,10 @@ async function init() {
 }
 
 export default {
-  targets,
   getRedirects,
-  getCustomRedirects,
   setTedditRedirects,
   setLibredditRedirects,
 
-  getDisableReddit,
-  setDisableReddit,
-
   initLibredditCookies,
   initTedditCookies,
 
diff --git a/src/assets/javascripts/helpers/search.js b/src/assets/javascripts/helpers/search.js
index e6d230fe..730f3938 100644
--- a/src/assets/javascripts/helpers/search.js
+++ b/src/assets/javascripts/helpers/search.js
@@ -122,138 +122,120 @@ let
   whoogleTorCustomRedirects,
   whoogleI2pCustomRedirects;
 
-let disable; // disableSearch
-let frontend; // searchFrontend
-let protocol; // searchProtocol
-
-let theme;
-let applyThemeToSites;
-function initSearxCookies() {
-  let themeValue;
-  if (theme == 'light') themeValue = 'logicodev';
-  if (theme == 'dark') themeValue = 'logicodev-dark';
-  if (applyThemeToSites && themeValue) {
-    let checkedInstances;
-    if (protocol == 'normal') checkedInstances = [...searxNormalRedirectsChecks, ...searxNormalCustomRedirects];
-    else if (protocol == 'tor') checkedInstances = [...searxTorRedirectsChecks, ...searxTorCustomRedirects];
-    else if (protocol == 'i2p') checkedInstances = [...searxI2pRedirectsChecks, ...searxI2pCustomRedirects];
-
-    for (const instanceUrl of checkedInstances) {
-      browser.cookies.set({ url: instanceUrl, name: "oscar-style", value: themeValue })
-      browser.cookies.set({ url: instanceUrl, name: "theme", value: 'oscar' })
-    }
-  }
+let disable, // disableSearch
+  frontend, // searchFrontend
+  protocol; // searchProtocol
+
+function initSearxCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "searchProtocol",
+        "searxNormalRedirectsChecks",
+        "searxNormalCustomRedirects",
+        "searxTorRedirectsChecks",
+        "searxTorCustomRedirects",
+        "searxI2pRedirectsChecks",
+        "searxI2pCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.searxNormalRedirectsChecks,
+          ...r.searxNormalCustomRedirects,
+          ...r.searxTorRedirectsChecks,
+          ...r.searxTorCustomRedirects,
+          ...r.searxI2pRedirectsChecks,
+          ...r.searxI2pCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (protocol == 'normal') checkedInstances = [...r.searxNormalRedirectsChecks, ...r.searxNormalCustomRedirects];
+        else if (protocol == 'tor') checkedInstances = [...r.searxTorRedirectsChecks, ...r.searxTorCustomRedirects];
+        else if (protocol == 'i2p') checkedInstances = [...r.searxI2pRedirectsChecks, ...r.searxI2pCustomRedirects];
+        for (const to of checkedInstances) {
+          commonHelper.copyCookie('searx', from, to, 'advanced_search');
+          commonHelper.copyCookie('searx', from, to, 'autocomplete');
+          commonHelper.copyCookie('searx', from, to, 'categories');
+          commonHelper.copyCookie('searx', from, to, 'disabled_engines');
+          commonHelper.copyCookie('searx', from, to, 'disabled_plugins');
+          commonHelper.copyCookie('searx', from, to, 'doi_resolver');
+          commonHelper.copyCookie('searx', from, to, 'enabled_engines');
+          commonHelper.copyCookie('searx', from, to, 'enabled_plugins');
+          commonHelper.copyCookie('searx', from, to, 'image_proxy');
+          commonHelper.copyCookie('searx', from, to, 'language');
+          commonHelper.copyCookie('searx', from, to, 'locale');
+          commonHelper.copyCookie('searx', from, to, 'method');
+          commonHelper.copyCookie('searx', from, to, 'oscar-style');
+          commonHelper.copyCookie('searx', from, to, 'results_on_new_tab');
+          commonHelper.copyCookie('searx', from, to, 'safesearch');
+          commonHelper.copyCookie('searx', from, to, 'theme');
+          commonHelper.copyCookie('searx', from, to, 'tokens');
+        }
+        resolve(true);
+      }
+    )
+  })
 }
 
-function initSearxngCookies() {
-  browser.storage.local.get(
-    [
-      "searchProtocol",
-      "searchFrontend",
-      "searxngCustomSettings",
-
-      "searxngNormalRedirectsChecks",
-      "searxngNormalCustomRedirects",
-      "searxngTorRedirectsChecks",
-      "searxngTorCustomRedirects",
-      "searxngI2pRedirectsChecks",
-      "searxngI2pCustomRedirects",
-
-      "searxng_category_general",
-      "searxng_category_images",
-      "searxng_category_videos",
-      "searxng_category_news",
-      "searxng_category_map",
-      "searxng_category_music",
-      "searxng_category_it",
-      "searxng_category_science",
-      "searxng_category_files",
-      "searxng_category_social_media",
-      "searxng_language",
-      "searxng_autocomplete",
-      "searxng_safesearch",
-      "searxng_hostname_replace",
-      "searxng_oa_doi_rewrite",
-      "searxng_doi_resolver",
-      "searxng_tokens",
-      "searxng_locale",
-      "searxng_theme",
-      "searxng_simple_style",
-      "searxng_results_on_new_tab",
-      "searxng_infinite_scroll",
-      "searxng_search_on_category_select",
-      "searxng_vim_hotkeys",
-      "searxng_method",
-      "searxng_image_proxy",
-      "searxng_query_in_title",
-      "searxng_tracker_url_remover",
-    ],
-    r => {
-      if (!r.searxngCustomSettings || r.searchFrontend != 'searxng') return;
-      console.log('init SearXNG Cookies');
-      let checkedInstances;
-      if (r.searchProtocol == 'normal') checkedInstances = [...r.searxngNormalRedirectsChecks, ...r.searxngNormalCustomRedirects];
-      else if (r.searchProtocol == 'tor') checkedInstances = [...r.searxngTorRedirectsChecks, ...r.searxngTorCustomRedirects];
-      else if (r.searchProtocol == 'i2p') checkedInstances = [...r.searxngI2pRedirectsChecks, ...r.searxngI2pCustomRedirects];
-
-      let categoryList = [];
-      if (r.searxng_category_general) categoryList.push('general')
-      if (r.searxng_category_images) categoryList.push('images')
-      if (r.searxng_category_videos) categoryList.push('videos')
-      if (r.searxng_category_news) categoryList.push('news')
-      if (r.searxng_category_map) categoryList.push('map')
-      if (r.searxng_category_music) categoryList.push('music')
-      if (r.searxng_category_it) categoryList.push('it')
-      if (r.searxng_category_science) categoryList.push('science')
-      if (r.searxng_category_files) categoryList.push('files')
-      if (r.searxng_category_social_media) categoryList.push('social media')
-      let categoryString = '"' + categoryList.join("\\054") + '"'  // ""general\054images\054videos""
-
-      let enabledPluginsList = [];
-      if (r.searxng_hostname_replace) enabledPluginsList.push('searx.plugins.hostname_replace')
-      if (r.searxng_oa_doi_rewrite) enabledPluginsList.push('searx.plugins.oa_doi_rewrite')
-      if (r.searxng_vim_hotkeys) enabledPluginsList.push('searx.plugins.vim_hotkeys')
-      
-      let enabledPluginsString = '"' + enabledPluginsList.join("\\054") + '"' // ""searx.plugins.hostname_replace\054searx.plugins.oa_doi_rewrite""   
-
-
-      let disabledPluginsList = [];
-      if (!r.searxng_search_on_category_select) disabledPluginsList.push('searx.plugins.search_on_category_select')
-      if (!r.searxng_tracker_url_remover) disabledPluginsList.push('searx.plugins.tracker_url_remover')
-      let disabledPluginsString = '"' + disabledPluginsList.join("\\054") + '"' // ""searx.plugins.hostname_replace\054searx.plugins.oa_doi_rewrite""   
-
-      for (const instanceUrl of checkedInstances) {
-        browser.cookies.set({ url: instanceUrl, name: "categories", value: categoryString });
-
-        browser.cookies.set({ url: instanceUrl, name: "language", value: r.searxng_language });
-        browser.cookies.set({ url: instanceUrl, name: "autocomplete", value: r.searxng_autocomplete });
-        browser.cookies.set({ url: instanceUrl, name: "safesearch", value: r.searxng_safesearch });
-
-        browser.cookies.set({ url: instanceUrl, name: "enabled_plugins", value: enabledPluginsString });
-        browser.cookies.set({ url: instanceUrl, name: "disabled_plugins", value: disabledPluginsString });
-
-        browser.cookies.set({ url: instanceUrl, name: "doi_resolver", value: r.searxng_doi_resolver });
-        browser.cookies.set({ url: instanceUrl, name: "tokens", value: r.searxng_tokens });
-        browser.cookies.set({ url: instanceUrl, name: "locale", value: r.searxng_locale });
-        browser.cookies.set({ url: instanceUrl, name: "theme", value: r.searxng_theme });
-        browser.cookies.set({ url: instanceUrl, name: "simple_style", value: r.searxng_simple_style });
-        browser.cookies.set({ url: instanceUrl, name: "results_on_new_tab", value: r.searxng_results_on_new_tab });
-        browser.cookies.set({ url: instanceUrl, name: "infinite_scroll", value: r.searxng_infinite_scroll });
-        browser.cookies.set({ url: instanceUrl, name: "method", value: r.searxng_method });
-        browser.cookies.set({ url: instanceUrl, name: "image_proxy", value: r.searxng_image_proxy });
-        browser.cookies.set({ url: instanceUrl, name: "query_in_title", value: r.searxng_query_in_title });
+function initSearxngCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "searchProtocol",
+        "searxngNormalRedirectsChecks",
+        "searxngNormalCustomRedirects",
+        "searxngTorRedirectsChecks",
+        "searxngTorCustomRedirects",
+        "searxngI2pRedirectsChecks",
+        "searxngI2pCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.searxngNormalRedirectsChecks,
+          ...r.searxngNormalCustomRedirects,
+          ...r.searxngTorRedirectsChecks,
+          ...r.searxngTorCustomRedirects,
+          ...r.searxngI2pRedirectsChecks,
+          ...r.searxngI2pCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (r.searchProtocol == 'normal') checkedInstances = [...r.searxngNormalRedirectsChecks, ...r.searxngNormalCustomRedirects];
+        else if (r.searchProtocol == 'tor') checkedInstances = [...r.searxngTorRedirectsChecks, ...r.searxngTorCustomRedirects];
+        else if (r.searchProtocol == 'i2p') checkedInstances = [...r.searxngI2pRedirectsChecks, ...r.searxngI2pCustomRedirects];
+        for (const to of checkedInstances) {
+          commonHelper.copyCookie('searxng', from, to, 'autocomplete');
+          commonHelper.copyCookie('searxng', from, to, 'categories');
+          commonHelper.copyCookie('searxng', from, to, 'disabled_engines');
+          commonHelper.copyCookie('searxng', from, to, 'disabled_plugins');
+          commonHelper.copyCookie('searxng', from, to, 'doi_resolver');
+          commonHelper.copyCookie('searxng', from, to, 'enabled_plugins');
+          commonHelper.copyCookie('searxng', from, to, 'enabled_engines');
+          commonHelper.copyCookie('searxng', from, to, 'image_proxy');
+          commonHelper.copyCookie('searxng', from, to, 'infinite_scroll');
+          commonHelper.copyCookie('searxng', from, to, 'language');
+          commonHelper.copyCookie('searxng', from, to, 'locale');
+          commonHelper.copyCookie('searxng', from, to, 'maintab');
+          commonHelper.copyCookie('searxng', from, to, 'method');
+          commonHelper.copyCookie('searxng', from, to, 'query_in_title');
+          commonHelper.copyCookie('searxng', from, to, 'results_on_new_tab');
+          commonHelper.copyCookie('searxng', from, to, 'safesearch');
+          commonHelper.copyCookie('searxng', from, to, 'simple_style');
+          commonHelper.copyCookie('searxng', from, to, 'theme');
+          commonHelper.copyCookie('searxng', from, to, 'tokens');
+        }
+        resolve(true);
       }
-    }
-  )
-
-
+    )
+  })
 }
 
 function redirect(url) {
   if (disable) return;
   if (!targets.some(rx => rx.test(url.href))) return;
   if (url.searchParams.has('tbm')) return;
-
   if (url.hostname.includes('google') && !url.searchParams.has('q') && url.pathname != '/') return;
   let randomInstance;
   let path;
@@ -353,7 +335,6 @@ function switchInstance(url) {
     else if (protocol == 'i2p') instancesList = [...whoogleI2pRedirectsChecks, ...whoogleI2pCustomRedirects];
   }
 
-  console.log("instancesList", instancesList);
   let index = instancesList.indexOf(protocolHost);
   if (index > -1) instancesList.splice(index, 1);
 
@@ -391,6 +372,7 @@ async function initDefaults() {
         searchFrontend: 'searxng',
         searchRedirects: redirects,
         searxngCustomSettings: false,
+        searchProtocol: 'normal',
 
         whoogleNormalRedirectsChecks: whoogleNormalRedirectsChecks,
         whoogleNormalCustomRedirects: [],
@@ -418,46 +400,6 @@ async function initDefaults() {
 
         searxngI2pRedirectsChecks: [...redirects.searxng.i2p],
         searxngI2pCustomRedirects: [],
-
-        theme: 'DEFAULT',
-        applyThemeToSites: false,
-
-        searchProtocol: 'normal',
-
-        searxng_category_general: true,
-        searxng_category_images: false,
-        searxng_category_videos: false,
-        searxng_category_news: false,
-        searxng_category_map: false,
-        searxng_category_music: false,
-        searxng_category_it: false,
-        searxng_category_science: false,
-        searxng_category_files: false,
-        searxng_category_social_media: false,
-
-        searxng_language: 'en',
-        searxng_autocomplete: 'google',
-        searxng_safesearch: '0',
-
-        searxng_hostname_replace: false,
-        searxng_oa_doi_rewrite: false,
-
-        searxng_doi_resolver: 'oadoi.org',
-        searxng_tokens: '',
-
-        searxng_locale: 'en',
-        searxng_theme: 'simple',
-        searxng_simple_style: 'auto',
-        searxng_results_on_new_tab: '0',
-        searxng_infinite_scroll: '0',
-
-        searxng_search_on_category_select: true,
-        searxng_vim_hotkeys: false,
-
-        searxng_method: 'POST',
-        searxng_image_proxy: '1',
-        searxng_query_in_title: '',
-        searxng_tracker_url_remover: false,
       })
     })
   })
@@ -469,6 +411,7 @@ async function init() {
       "disableSearch",
       "searchFrontend",
       "searchRedirects",
+      "searchProtocol",
 
       "whoogleNormalRedirectsChecks",
       "whoogleNormalCustomRedirects",
@@ -496,20 +439,11 @@ async function init() {
 
       "searxngI2pRedirectsChecks",
       "searxngI2pCustomRedirects",
-
-      "theme",
-      "applyThemeToSites",
-
-      "searchProtocol",
     ],
     r => {
       disable = r.disableSearch;
       protocol = r.searchProtocol;
       frontend = r.searchFrontend;
-
-      theme = r.theme;
-      applyThemeToSites = r.applyThemeToSites;
-
       redirects = r.searchRedirects;
 
       whoogleNormalRedirectsChecks = r.whoogleNormalRedirectsChecks;
@@ -543,7 +477,6 @@ async function init() {
 }
 
 export default {
-
   setSearxRedirects,
   setSearxngRedirects,
   setWhoogleRedirects,
diff --git a/src/assets/javascripts/helpers/sendTargets.js b/src/assets/javascripts/helpers/sendTargets.js
index f131f5c3..7a5db96e 100644
--- a/src/assets/javascripts/helpers/sendTargets.js
+++ b/src/assets/javascripts/helpers/sendTargets.js
@@ -72,12 +72,15 @@ function switchInstance(url) {
 }
 
 function redirect(url, type, initiator) {
-
     if (disable) return null;
-    if (initiator && ([...redirects.send.normal, ...sendNormalCustomRedirects].includes(initiator.origin) || targets.includes(initiator.host))) return null;
-    if (!targets.some(rx => rx.test(url.href))) return null;
-
     if (type != "main_frame") return null;
+    if (initiator && (
+        [...redirects.send.normal,
+        ...sendNormalCustomRedirects
+        ].includes(initiator.origin) ||
+        targets.includes(initiator.host)
+    )) return null;
+    if (!targets.some(rx => rx.test(url.href))) return null;
 
     let instancesList;
     if (protocol == 'normal') instancesList = [...sendNormalRedirectsChecks, ...sendNormalCustomRedirects];
@@ -147,9 +150,9 @@ export default {
     getRedirects,
     setRedirects,
 
+    redirect,
     switchInstance,
 
-    redirect,
     initDefaults,
     init,
 };
diff --git a/src/assets/javascripts/helpers/tiktok.js b/src/assets/javascripts/helpers/tiktok.js
index 4945f9e3..07820c26 100644
--- a/src/assets/javascripts/helpers/tiktok.js
+++ b/src/assets/javascripts/helpers/tiktok.js
@@ -40,43 +40,51 @@ let proxiTokTorCustomRedirects = [];
 
 let disable; // disableTiktok
 let protocol;
-let enableCustom;
 
-let theme;
-let api_legacy;
-
-function initProxiTokCookies() {
-    console.log('initProxiTokCookies')
-    if (enableCustom) {
-        let checkedInstances;
-        if (protocol == 'normal') checkedInstances = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects]
-        else if (protocol == 'tor') checkedInstances = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects]
-
-        for (const instance of checkedInstances) {
-            browser.cookies.set({ url: instance, name: "theme", value: theme })
-            browser.cookies.set({ url: instance, name: "api-legacy", value: api_legacy ? 'on' : 'off' })
-        }
-    }
+function initProxiTokCookies(from) {
+    return new Promise(resolve => {
+        browser.storage.local.get(
+            [
+                "tiktokProtocol",
+                "proxiTokNormalRedirectsChecks",
+                "proxiTokNormalCustomRedirects",
+                "proxiTokTorRedirectsChecks",
+                "proxiTokTorCustomRedirects",
+            ],
+            r => {
+                let protocolHost = commonHelper.protocolHost(from);
+                if (![
+                    ...r.proxiTokNormalRedirectsChecks,
+                    ...r.proxiTokNormalCustomRedirects,
+                    ...r.proxiTokTorRedirectsChecks,
+                    ...r.proxiTokTorCustomRedirects,
+                ].includes(protocolHost)) resolve();
+
+                let checkedInstances;
+                if (r.tiktokProtocol == 'normal') checkedInstances = [...r.proxiTokNormalRedirectsChecks, ...r.proxiTokNormalCustomRedirects]
+                else if (r.tiktokProtocol == 'tor') checkedInstances = [...r.proxiTokTorRedirectsChecks, ...r.proxiTokTorCustomRedirects]
+                for (const to of checkedInstances) {
+                    commonHelper.copyCookie('proxitok', from, to, 'theme');
+                    commonHelper.copyCookie('proxitok', from, to, 'api-legacy');
+                }
+                resolve(true);
+            }
+        )
+    })
 }
 
 function redirect(url, type, initiator) {
     if (disable) return;
-    if (initiator &&
-        (
-            [
-                ...redirects.proxiTok.normal,
-                ...proxiTokNormalCustomRedirects
-            ].includes(initiator.origin) ||
-            targets.includes(initiator.host)
-        )
+    if (type != "main_frame") return null;
+    if (initiator && (
+        [...redirects.proxiTok.normal, ...proxiTokNormalCustomRedirects].includes(initiator.origin) ||
+        targets.includes(initiator.host)
+    )
     ) return;
     if (!targets.some(rx => rx.test(url.href))) return;
     // https://www.tiktok.com/@keysikaspol/video/7061265241887345946
     // https://www.tiktok.com/@keysikaspol
 
-
-    if (type != "main_frame") return null;
-
     let instancesList;
     if (protocol == 'normal') instancesList = [...proxiTokNormalRedirectsChecks, ...proxiTokNormalCustomRedirects];
     if (protocol == 'tor') instancesList = [...proxiTokTorRedirectsChecks, ...proxiTokTorCustomRedirects];
@@ -86,16 +94,27 @@ function redirect(url, type, initiator) {
     return `${randomInstance}${url.pathname}`;
 }
 
-function reverse(url) {
-    let protocolHost = commonHelper.protocolHost(url);
-    if (
-        ![...redirects.proxiTok.normal,
-        ...redirects.proxiTok.tor,
-        ...proxiTokNormalCustomRedirects,
-        ...proxiTokTorCustomRedirects].includes(protocolHost)
-    ) return;
-
-    return `https://tiktok.com${url.pathname}${url.search}`;
+async function reverse(url) {
+    browser.storage.local.get(
+        [
+            "tiktokRedirects",
+            "proxiTokNormalCustomRedirects",
+            "proxiTokTorCustomRedirects",
+        ],
+        r => {
+            let protocolHost = commonHelper.protocolHost(url);
+            if (
+                ![
+                    ...r.tiktokRedirects.proxiTok.normal,
+                    ...r.tiktokRedirects.proxiTok.tor,
+                    ...r.proxiTokNormalCustomRedirects,
+                    ...r.proxiTokTorCustomRedirects
+                ].includes(protocolHost)
+            ) return;
+
+            return `https://tiktok.com${url.pathname}${url.search}`;
+        }
+    )
 }
 
 async function initDefaults() {
@@ -114,12 +133,6 @@ async function initDefaults() {
 
                 proxiTokTorRedirectsChecks: [...redirects.proxiTok.tor],
                 proxiTokTorCustomRedirects: [],
-
-                enableTiktokCustomSettings: false,
-
-                proxiTokTheme: 'default',
-                proxiTokApiLegacy: 'off',
-
             });
             resolve();
         });
@@ -138,11 +151,6 @@ async function init() {
 
             "proxiTokTorRedirectsChecks",
             "proxiTokTorCustomRedirects",
-
-            "enableTiktokCustomSettings",
-
-            "proxiTokTheme",
-            "proxiTokApiLegacy",
         ],
         r => {
             disable = r.disableTiktok;
@@ -154,25 +162,19 @@ async function init() {
 
             proxiTokTorRedirectsChecks = r.proxiTokTorRedirectsChecks;
             proxiTokTorCustomRedirects = r.proxiTokTorCustomRedirects;
-
-            enableCustom = r.enableTiktokCustomSettings;
-
-            theme = r.proxiTokTheme;
-            api_legacy = r.proxiTokApiLegacy;
         }
     )
 }
 
 export default {
-
     getRedirects,
     setRedirects,
 
+    redirect,
     reverse,
 
     initProxiTokCookies,
 
-    redirect,
     initDefaults,
     init,
 };
diff --git a/src/assets/javascripts/helpers/translate/lingva-preferences.js b/src/assets/javascripts/helpers/translate/lingva-preferences.js
index a9652903..eeee2415 100644
--- a/src/assets/javascripts/helpers/translate/lingva-preferences.js
+++ b/src/assets/javascripts/helpers/translate/lingva-preferences.js
@@ -3,12 +3,10 @@ window.browser = window.browser || window.chrome;
 browser.storage.local.get(
     [
         "theme",
-        "applyThemeToSites",
     ],
     r => {
-        let applyThemeToSites = r.applyThemeToSites;
         let theme = r.theme;
 
-        if (applyThemeToSites && theme != "DEFAULT") localStorage.setItem("chakra-ui-color-mode", r.theme);
+        if (theme != "DEFAULT") localStorage.setItem("chakra-ui-color-mode", r.theme);
     }
 )
\ No newline at end of file
diff --git a/src/assets/javascripts/helpers/translate/translate.js b/src/assets/javascripts/helpers/translate/translate.js
index 7ce67433..3efaf544 100644
--- a/src/assets/javascripts/helpers/translate/translate.js
+++ b/src/assets/javascripts/helpers/translate/translate.js
@@ -38,11 +38,6 @@ function setSimplyTranslateRedirects(val) {
   browser.storage.local.set({ simplyTranslateTorRedirectsChecks })
 }
 
-let simplyTranslateNormalRedirectsChecks;
-let simplyTranslateTorRedirectsChecks;
-let simplyTranslateNormalCustomRedirects = [];
-let simplyTranslateTorCustomRedirects = [];
-
 function setLingvaRedirects(val) {
   redirects.lingva = val;
   browser.storage.local.set({ translateRedirects: redirects })
@@ -62,24 +57,26 @@ function setLingvaRedirects(val) {
   browser.storage.local.set({ lingvaTorRedirectsChecks })
 }
 
-let lingvaNormalRedirectsChecks;
-let lingvaTorRedirectsChecks;
-let lingvaNormalCustomRedirects = [];
-let lingvaTorCustomRedirects = [];
+let
+  simplyTranslateNormalRedirectsChecks,
+  simplyTranslateTorRedirectsChecks,
+  simplyTranslateNormalCustomRedirects,
+  simplyTranslateTorCustomRedirects,
+  lingvaNormalRedirectsChecks,
+  lingvaTorRedirectsChecks,
+  lingvaNormalCustomRedirects,
+  lingvaTorCustomRedirects;
 
 
 let
   disable, // translateDisable
   frontend, // translateFrontend
-  protocol, // translateProtocol
-  from, // translateFrom
-  to, // translateTo
-  simplyTranslateEngine;
+  protocol; // translateProtocol
 
 function isTranslateRedirects(url, type, frontend) {
   let protocolHost = commonHelper.protocolHost(url);
 
-  if (type !== "main_frame") return false;
+  if (type !== "main_frame") return;
 
   if (frontend == 'simplyTranslate')
     return [
@@ -124,40 +121,33 @@ function redirect(url) {
   if (disable) return;
   if (!targets.some(rx => rx.test(url.href))) return;
 
-  let params_arr = url.search.split('&');
-  params_arr[0] = params_arr[0].substring(1);
-  let myMap = {};
-  for (let i = 0; i < params_arr.length; i++) {
-    let pair = params_arr[i].split('=');
-    myMap[pair[0]] = pair[1];
-  }
   if (frontend == 'simplyTranslate') {
     let instancesList;
     if (protocol == 'normal') instancesList = [...simplyTranslateNormalRedirectsChecks, ...simplyTranslateNormalCustomRedirects];
     if (protocol == 'tor') instancesList = [...simplyTranslateTorRedirectsChecks, ...simplyTranslateTorCustomRedirects];
-    if (instancesList.length === 0) return null;
+    if (instancesList.length === 0) return;
     let randomInstance = commonHelper.getRandomInstance(instancesList)
 
-    if (myMap.sl && myMap.tl && myMap.text)
-      return `${randomInstance}/${url.search}`;
-    else {
-      if (from != "DEFAULT") url.searchParams.append("sl", from);
-      if (to != "DEFAULT") url.searchParams.append("tl", to);
-      if (simplyTranslateEngine != "DEFAULT") url.searchParams.append("engine", simplyTranslateEngine);
-      return `${randomInstance}/${url.search}`
-    }
+    return `${randomInstance}/${url.search}`;
   }
   else if (frontend == 'lingva') {
+    let params_arr = url.search.split('&');
+    params_arr[0] = params_arr[0].substring(1);
+    let myMap = {};
+    for (let i = 0; i < params_arr.length; i++) {
+      let pair = params_arr[i].split('=');
+      myMap[pair[0]] = pair[1];
+    }
     let instancesList;
     if (protocol == 'normal') instancesList = [...lingvaNormalRedirectsChecks, ...lingvaNormalCustomRedirects];
     if (protocol == 'tor') instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
-    if (instancesList.length === 0) return null;
+    if (instancesList.length === 0) return;
     let randomInstance = commonHelper.getRandomInstance(instancesList)
 
     if (myMap.sl && myMap.tl && myMap.text)
       return `${randomInstance}/${myMap.sl}/${myMap.tl}/${myMap.text}`;
-    else
-      return randomInstance;
+
+    return randomInstance;
   }
 }
 
@@ -190,10 +180,8 @@ function switchInstance(url) {
     else if (protocol == 'tor') instancesList = [...lingvaTorRedirectsChecks, ...lingvaTorCustomRedirects];
   }
 
-  console.log("instancesList", instancesList);
   let index = instancesList.indexOf(protocolHost);
   if (index > -1) instancesList.splice(index, 1);
-
   if (instancesList.length === 0) return null;
 
   let randomInstance = commonHelper.getRandomInstance(instancesList);
@@ -210,7 +198,7 @@ async function initDefaults() {
       lingvaNormalRedirectsChecks = [...redirects.lingva.normal]
       for (const instance of r.cloudflareList) {
         let i;
-        
+
         i = simplyTranslateNormalRedirectsChecks.indexOf(instance);
         if (i > -1) simplyTranslateNormalRedirectsChecks.splice(i, 1);
 
@@ -232,10 +220,6 @@ async function initDefaults() {
         lingvaNormalCustomRedirects: [],
         lingvaTorRedirectsChecks: [...redirects.lingva.tor],
         lingvaTorCustomRedirects: [],
-
-        translateFrom: "auto",
-        translateTo: 'en',
-        simplyTranslateEngine: 'google',
       })
     })
   })
@@ -258,33 +242,24 @@ async function init() {
       "lingvaNormalCustomRedirects",
       "lingvaTorRedirectsChecks",
       "lingvaTorCustomRedirects",
-
-      "translateFrom",
-      "translateTo",
-      "simplyTranslateEngine",
     ],
-    result => {
-      disable = result.translateDisable;
-      frontend = result.translateFrontend;
-      protocol = result.translateProtocol;
-
-      from = result.translateFrom;
-      to = result.translateTo;
-      simplyTranslateEngine = result.simplyTranslateEngine;
-
-      redirects = result.translateRedirects;
+    r => {
+      disable = r.translateDisable;
+      frontend = r.translateFrontend;
+      protocol = r.translateProtocol;
+      redirects = r.translateRedirects;
 
-      simplyTranslateNormalRedirectsChecks = result.simplyTranslateNormalRedirectsChecks;
-      simplyTranslateNormalCustomRedirects = result.simplyTranslateNormalCustomRedirects;
+      simplyTranslateNormalRedirectsChecks = r.simplyTranslateNormalRedirectsChecks;
+      simplyTranslateNormalCustomRedirects = r.simplyTranslateNormalCustomRedirects;
 
-      simplyTranslateTorRedirectsChecks = result.simplyTranslateTorRedirectsChecks;
-      simplyTranslateTorCustomRedirects = result.simplyTranslateTorCustomRedirects;
+      simplyTranslateTorRedirectsChecks = r.simplyTranslateTorRedirectsChecks;
+      simplyTranslateTorCustomRedirects = r.simplyTranslateTorCustomRedirects;
 
-      lingvaNormalRedirectsChecks = result.lingvaNormalRedirectsChecks;
-      lingvaNormalCustomRedirects = result.lingvaNormalCustomRedirects;
+      lingvaNormalRedirectsChecks = r.lingvaNormalRedirectsChecks;
+      lingvaNormalCustomRedirects = r.lingvaNormalCustomRedirects;
 
-      lingvaTorRedirectsChecks = result.lingvaTorRedirectsChecks;
-      lingvaTorCustomRedirects = result.lingvaTorCustomRedirects;
+      lingvaTorRedirectsChecks = r.lingvaTorRedirectsChecks;
+      lingvaTorCustomRedirects = r.lingvaTorCustomRedirects;
     });
 }
 
diff --git a/src/assets/javascripts/helpers/twitter.js b/src/assets/javascripts/helpers/twitter.js
index 2a213a80..2af6a28d 100644
--- a/src/assets/javascripts/helpers/twitter.js
+++ b/src/assets/javascripts/helpers/twitter.js
@@ -42,56 +42,14 @@ let nitterTorRedirectsChecks;
 let nitterTorCustomRedirects = [];
 
 let disable; // disableTwitter
-let enableCustomSettings; // enableTwitterCustomSettings
-
 let protocol; // twitterProtocol
-let bypassWatchOnTwitter; // bypassWatchOnTwitter
-let alwaysUsePreferred;
-
-let
-  theme,
-  infiniteScroll,
-  stickyProfile,
-  bidiSupport,
-  hideTweetStats,
-  hideBanner,
-  hidePins,
-  hideReplies,
-  squareAvatars,
-  mp4Playback,
-  hlsPlayback,
-  proxyVideos,
-  muteVideos,
-  autoplayGifs;
-
 
 function redirect(url, initiator) {
-  let protocolHost = commonHelper.protocolHost(url);
-  let isNitter = [
-    ...redirects.nitter.normal,
-    ...redirects.nitter.tor
-  ].includes(protocolHost);
-
-  let isCheckedNitter = [
-    ...nitterNormalRedirectsChecks,
-    ...nitterNormalCustomRedirects,
-    ...nitterTorRedirectsChecks,
-    ...nitterTorCustomRedirects
-  ].includes(protocolHost);
-
-  if (alwaysUsePreferred && isNitter && !isCheckedNitter) return switchInstance(url);
-
-  if (disable) return null;
-
-  if (!targets.some(rx => rx.test(url.href))) return null;
-
-  if (url.pathname.split("/").includes("home")) {
-    console.log("twitter homepage");
-    return null;
-  }
+  if (disable) return;
+  if (!targets.some(rx => rx.test(url.href))) return;
+  if (url.pathname.split("/").includes("home")) return;
 
   if (
-    bypassWatchOnTwitter &&
     initiator &&
     [...redirects.nitter.normal,
     ...redirects.nitter.tor,
@@ -177,10 +135,9 @@ function removeXFrameOptions(e) {
 }
 
 function isNitter(url, type) {
-  let protocolHost = commonHelper.protocolHost(url);
-
   if (type !== "main_frame" && type !== "sub_frame") return false;
 
+  let protocolHost = commonHelper.protocolHost(url);
   return [
     ...redirects.nitter.normal,
     ...redirects.nitter.tor,
@@ -189,73 +146,70 @@ function isNitter(url, type) {
   ].includes(protocolHost);
 }
 
-function initNitterCookies() {
-  if (enableCustomSettings) {
-    let checkedInstances;
-    if (protocol == 'normal') checkedInstances = [...nitterNormalRedirectsChecks, ...nitterNormalCustomRedirects]
-    else if (protocol == 'tor') checkedInstances = [...nitterTorRedirectsChecks, ...nitterTorCustomRedirects]
-
-    for (const instanceUrl of checkedInstances) {
-      browser.cookies.set({ url: instanceUrl, name: "theme", value: theme })
-      browser.cookies.set({ url: instanceUrl, name: "infiniteScroll", value: infiniteScroll ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "stickyProfile", value: stickyProfile ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "bidiSupport", value: bidiSupport ? 'on' : '', })
-      browser.cookies.set({ url: instanceUrl, name: "hideTweetStats", value: hideTweetStats ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "hideBanner", value: hideBanner ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "hidePins", value: hidePins ? 'on' : '', })
-      browser.cookies.set({ url: instanceUrl, name: "hideReplies", value: hideReplies ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "squareAvatars", value: squareAvatars ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "mp4Playback", value: mp4Playback ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "hlsPlayback", value: hlsPlayback ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "proxyVideos", value: proxyVideos ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "muteVideos", value: muteVideos ? 'on' : '' })
-      browser.cookies.set({ url: instanceUrl, name: "autoplayGifs", value: autoplayGifs ? 'on' : '' })
-    }
-  }
+async function initNitterCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "twitterProtocol",
+        "nitterNormalRedirectsChecks",
+        "nitterNormalCustomRedirects",
+        "nitterTorRedirectsChecks",
+        "nitterTorCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.nitterNormalRedirectsChecks,
+          ...r.nitterTorRedirectsChecks,
+          ...r.nitterNormalCustomRedirects,
+          ...r.nitterTorCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (r.twitterProtocol == 'normal') checkedInstances = [...r.nitterNormalRedirectsChecks, ...r.nitterNormalCustomRedirects]
+        else if (r.twitterProtocol == 'tor') checkedInstances = [...r.nitterTorRedirectsChecks, ...r.nitterTorCustomRedirects]
+
+        for (const to of checkedInstances) {
+          commonHelper.copyCookie('nitter', from, to, 'theme');
+          commonHelper.copyCookie('nitter', from, to, 'infiniteScroll');
+          commonHelper.copyCookie('nitter', from, to, 'stickyProfile');
+          commonHelper.copyCookie('nitter', from, to, 'bidiSupport');
+          commonHelper.copyCookie('nitter', from, to, 'hideTweetStats');
+          commonHelper.copyCookie('nitter', from, to, 'hideBanner');
+          commonHelper.copyCookie('nitter', from, to, 'hidePins');
+          commonHelper.copyCookie('nitter', from, to, 'hideReplies');
+          commonHelper.copyCookie('nitter', from, to, 'squareAvatars');
+          commonHelper.copyCookie('nitter', from, to, 'mp4Playback');
+          commonHelper.copyCookie('nitter', from, to, 'hlsPlayback');
+          commonHelper.copyCookie('nitter', from, to, 'proxyVideos');
+          commonHelper.copyCookie('nitter', from, to, 'muteVideos');
+          commonHelper.copyCookie('nitter', from, to, 'autoplayGifs');
+        }
+        resolve(true);
+      })
+  })
 }
 
-
-async function initDefaults() {
-  await fetch('/instances/data.json').then(response => response.text()).then(async data => {
+function initDefaults() {
+  fetch('/instances/data.json').then(response => response.text()).then(data => {
     let dataJson = JSON.parse(data);
     redirects.nitter = dataJson.nitter;
-    browser.storage.local.get('cloudflareList', async r => {
+    browser.storage.local.get('cloudflareList', r => {
       nitterNormalRedirectsChecks = [...redirects.nitter.normal];
       for (const instance of r.cloudflareList) {
         let i = nitterNormalRedirectsChecks.indexOf(instance);
         if (i > -1) nitterNormalRedirectsChecks.splice(i, 1);
       }
-      await browser.storage.local.set({
+      browser.storage.local.set({
         disableTwitter: false,
-
-        enableTwitterCustomSettings: false,
-
         twitterRedirects: redirects,
-        bypassWatchOnTwitter: true,
+        twitterProtocol: "normal",
 
         nitterNormalRedirectsChecks: nitterNormalRedirectsChecks,
         nitterNormalCustomRedirects: [],
 
         nitterTorRedirectsChecks: [...redirects.nitter.tor],
         nitterTorCustomRedirects: [],
-
-        twitterProtocol: "normal",
-        alwaysUsePreferred: false,
-
-        nitterTheme: 'Auto',
-        nitterInfiniteScroll: false,
-        nitterStickyProfile: true,
-        nitterBidiSupport: false,
-        nitterHideTweetStats: false,
-        nitterHideBanner: false,
-        nitterHidePins: false,
-        nitterHideReplies: false,
-        nitterSquareAvatars: false,
-        nitterMp4Playback: true,
-        nitterHlsPlayback: false,
-        nitterProxyVideos: true,
-        nitterMuteVideos: false,
-        nitterAutoplayGifs: true,
       })
     })
   })
@@ -265,46 +219,18 @@ async function init() {
   browser.storage.local.get(
     [
       "disableTwitter",
-
-      "enableTwitterCustomSettings",
-
       "twitterRedirects",
-      "bypassWatchOnTwitter",
+      "twitterProtocol",
 
       "nitterNormalRedirectsChecks",
       "nitterNormalCustomRedirects",
 
       "nitterTorRedirectsChecks",
       "nitterTorCustomRedirects",
-
-      "twitterProtocol",
-      "alwaysUsePreferred",
-
-      "nitterTheme",
-      "nitterInfiniteScroll",
-      "nitterStickyProfile",
-      "nitterBidiSupport",
-      "nitterHideTweetStats",
-      "nitterHideBanner",
-      "nitterHidePins",
-      "nitterHideReplies",
-      "nitterSquareAvatars",
-      "nitterMp4Playback",
-      "nitterHlsPlayback",
-      "nitterProxyVideos",
-      "nitterMuteVideos",
-      "nitterAutoplayGifs",
     ],
     r => {
       disable = r.disableTwitter;
-      enableCustomSettings = r.enableTwitterCustomSettings;
-
       protocol = r.twitterProtocol;
-
-      bypassWatchOnTwitter = r.bypassWatchOnTwitter;
-
-      alwaysUsePreferred = r.alwaysUsePreferred;
-
       redirects = r.twitterRedirects;
 
       nitterNormalRedirectsChecks = r.nitterNormalRedirectsChecks;
@@ -312,21 +238,6 @@ async function init() {
 
       nitterTorRedirectsChecks = r.nitterTorRedirectsChecks;
       nitterTorCustomRedirects = r.nitterTorCustomRedirects;
-
-      theme = r.nitterTheme;
-      infiniteScroll = r.nitterInfiniteScroll;
-      stickyProfile = r.nitterStickyProfile;
-      bidiSupport = r.nitterBidiSupport;
-      hideTweetStats = r.nitterHideTweetStats;
-      hideBanner = r.nitterHideBanner;
-      hidePins = r.nitterHidePins;
-      hideReplies = r.nitterHideReplies;
-      squareAvatars = r.nitterSquareAvatars;
-      mp4Playback = r.nitterMp4Playback;
-      hlsPlayback = r.nitterHlsPlayback;
-      proxyVideos = r.nitterProxyVideos;
-      muteVideos = r.nitterMuteVideos;
-      autoplayGifs = r.nitterAutoplayGifs;
     }
   );
 }
diff --git a/src/assets/javascripts/helpers/wikipedia.js b/src/assets/javascripts/helpers/wikipedia.js
index b11eb1d2..17c1ece1 100644
--- a/src/assets/javascripts/helpers/wikipedia.js
+++ b/src/assets/javascripts/helpers/wikipedia.js
@@ -12,7 +12,6 @@ let redirects = {
   }
 };
 const getRedirects = () => redirects;
-
 function setRedirects(val) {
   redirects.wikiless = val;
   browser.storage.local.set({ wikipediaRedirects: redirects })
@@ -39,34 +38,52 @@ function setRedirects(val) {
   browser.storage.local.set({ wikilessI2pRedirectsChecks })
 }
 
-let disable; // disableWikipedia
-let protocol; // wikipediaProtocol
-
-let wikilessNormalRedirectsChecks;
-let wikilessTorRedirectsChecks;
-let wikilessI2pRedirectsChecks;
-let wikilessNormalCustomRedirects = [];
-let wikilessTorCustomRedirects = [];
-let wikilessI2pCustomRedirects = [];
-
+let
+  disable, // disableWikipedia
+  protocol; // wikipediaProtocol
 
-let theme;
-let applyThemeToSites;
+let
+  wikilessNormalRedirectsChecks,
+  wikilessTorRedirectsChecks,
+  wikilessI2pRedirectsChecks,
+  wikilessNormalCustomRedirects,
+  wikilessTorCustomRedirects,
+  wikilessI2pCustomRedirects;
 
 function initWikilessCookies() {
-  let themeValue;
-  if (theme == 'light') themeValue = 'white';
-  if (theme == 'dark') themeValue = 'dark';
-  if (applyThemeToSites && themeValue) {
-
-    let checkedInstances;
-    if (protocol == 'normal') checkedInstances = [...wikilessNormalRedirectsChecks, ...wikilessNormalCustomRedirects]
-    else if (protocol == 'tor') checkedInstances = [...wikilessTorRedirectsChecks, ...wikilessTorCustomRedirects]
-    else if (protocol == 'i2p') checkedInstances = [...wikilessI2pRedirectsChecks, ...wikilessI2pCustomRedirects]
-
-    for (const instanceUrl of checkedInstances)
-      browser.cookies.set({ url: instanceUrl, name: "theme", value: themeValue })
-  }
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "wikipediaProtocol",
+        "wikilessNormalRedirectsChecks",
+        "wikilessNormalCustomRedirects",
+        "wikilessTorRedirectsChecks",
+        "wikilessTorCustomRedirects",
+        "wikilessI2pRedirectsChecks",
+        "wikilessI2pCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.wikilessNormalRedirectsChecks,
+          ...r.wikilessNormalCustomRedirects,
+          ...r.wikilessTorRedirectsChecks,
+          ...r.wikilessTorCustomRedirects,
+          ...r.wikilessI2pRedirectsChecks,
+          ...r.wikilessI2pCustomRedirects,
+        ].includes(protocolHost)) resolve();
+
+        let checkedInstances;
+        if (r.wikipediaProtocol == 'normal') checkedInstances = [...r.wikilessNormalRedirectsChecks, ...r.wikilessNormalCustomRedirects]
+        else if (r.wikipediaProtocol == 'tor') checkedInstances = [...r.wikilessTorRedirectsChecks, ...r.wikilessTorCustomRedirects]
+        else if (r.wikipediaProtocol == 'i2p') checkedInstances = [...r.wikilessI2pRedirectsChecks, ...r.wikilessI2pCustomRedirects]
+
+        for (const to of checkedInstances)
+          commonHelper.copyCookie('wikiless', from, to, 'theme');
+        resolve(true);
+      }
+    )
+  })
 }
 
 function redirect(url) {
@@ -104,7 +121,6 @@ function redirect(url) {
     link += (i == 0 ? "?" : "&") + GETArguments[i][0] + "=" + GETArguments[i][1];
 
   return link;
-
 }
 
 function switchInstance(url) {
@@ -126,7 +142,6 @@ function switchInstance(url) {
   else if (protocol == 'tor') instancesList = [...wikilessTorCustomRedirects, ...wikilessTorRedirectsChecks];
   else if (protocol == 'i2p') instancesList = [...wikilessI2pCustomRedirects, ...wikilessI2pRedirectsChecks];
 
-  console.log("instancesList", instancesList);
   let index = instancesList.indexOf(protocolHost);
   if (index > -1) instancesList.splice(index, 1);
 
@@ -136,7 +151,6 @@ function switchInstance(url) {
   return `${randomInstance}${url.pathname}${url.search}`;
 }
 
-
 async function initDefaults() {
   fetch('/instances/data.json').then(response => response.text()).then(async data => {
     let dataJson = JSON.parse(data);
@@ -144,24 +158,19 @@ async function initDefaults() {
     browser.storage.local.get('cloudflareList', async r => {
       wikilessNormalRedirectsChecks = [...redirects.wikiless.normal];
       for (const instance of r.cloudflareList) {
-        let i;
-
-        i = wikilessNormalRedirectsChecks.indexOf(instance);
+        let i = wikilessNormalRedirectsChecks.indexOf(instance);
         if (i > -1) wikilessNormalRedirectsChecks.splice(i, 1);
       }
       await browser.storage.local.set({
         disableWikipedia: true,
         wikipediaRedirects: redirects,
+        wikipediaProtocol: "normal",
         wikilessNormalRedirectsChecks: wikilessNormalRedirectsChecks,
         wikilessTorRedirectsChecks: [...redirects.wikiless.tor],
         wikilessI2pRedirectsChecks: [...redirects.wikiless.i2p],
         wikilessNormalCustomRedirects: [],
         wikilessTorCustomRedirects: [],
         wikilessI2pCustomRedirects: [],
-        wikipediaProtocol: "normal",
-
-        theme: 'DEFAULT',
-        applyThemeToSites: false,
       })
     })
   })
@@ -172,20 +181,17 @@ async function init() {
     [
       "disableWikipedia",
       "wikipediaRedirects",
+      "wikipediaProtocol",
+
       "wikilessNormalRedirectsChecks",
       "wikilessTorRedirectsChecks",
       "wikilessI2pRedirectsChecks",
       "wikilessNormalCustomRedirects",
       "wikilessTorCustomRedirects",
       "wikilessI2pCustomRedirects",
-      "wikipediaProtocol",
-
-      "theme",
-      "applyThemeToSites",
-
-    ], r => {
+    ],
+    r => {
       disable = r.disableWikipedia;
-
       protocol = r.wikipediaProtocol;
       redirects = r.wikipediaRedirects;
 
@@ -197,9 +203,6 @@ async function init() {
 
       wikilessI2pRedirectsChecks = r.wikilessI2pRedirectsChecks;
       wikilessI2pCustomRedirects = r.wikilessI2pCustomRedirects;
-
-      theme = r.theme;
-      applyThemeToSites = r.applyThemeToSites;
     }
   );
 }
diff --git a/src/assets/javascripts/helpers/youtube/get_piped_settings.js b/src/assets/javascripts/helpers/youtube/get_piped_settings.js
new file mode 100644
index 00000000..12e92baa
--- /dev/null
+++ b/src/assets/javascripts/helpers/youtube/get_piped_settings.js
@@ -0,0 +1,22 @@
+window.browser = window.browser || window.chrome;
+
+browser.storage.local.set(
+    {
+        'piped_bufferGoal': localStorage.getItem("bufferGoal"),
+        'piped_comments': localStorage.getItem("comments"),
+        'piped_disableLBRY': localStorage.getItem("disableLBRY"),
+        'piped_enabledCodecs': localStorage.getItem("enabledCodecs"),
+        'piped_homepage': localStorage.getItem("homepage"),
+        'piped_listen': localStorage.getItem("listen"),
+        'piped_minimizeDescription': localStorage.getItem("minimizeDescription"),
+        'piped_playerAutoPlay': localStorage.getItem("playerAutoPlay"),
+        'piped_proxyLBRY': localStorage.getItem("proxyLBRY"),
+        'piped_quality': localStorage.getItem("quality"),
+        'piped_region': localStorage.getItem("region"),
+        'piped_selectedSkip': localStorage.getItem("selectedSkip"),
+        'piped_sponsorblock': localStorage.getItem("sponsorblock"),
+        'piped_theme': localStorage.getItem("theme"),
+        'piped_volume': localStorage.getItem("volume"),
+        'piped_watchHistory': localStorage.getItem("watchHistory"),
+    }
+)
diff --git a/src/assets/javascripts/helpers/youtube/invidious.js b/src/assets/javascripts/helpers/youtube/invidious.js
deleted file mode 100644
index a8e215a2..00000000
--- a/src/assets/javascripts/helpers/youtube/invidious.js
+++ /dev/null
@@ -1,133 +0,0 @@
-"use strict";
-
-window.browser = window.browser || window.chrome;
-
-async function initDefaults() {
-    await browser.storage.local.set({
-        youtubeListen: false,
-        youtubeVolume: 100,
-        youtubeAutoplay: false,
-        invidiousAlwaysProxy: false,
-        invidiousQuality: 'hd720',
-        invidiousPlayerStyle: 'invidious',
-        invidiousVideoLoop: false,
-        invidiousContinueAutoplay: true,
-        invidiousContinue: false,
-        invidiousSpeed: '1.0',
-        invidiousQualityDash: 'auto',
-        invidiousComments: ['youtube', ''],
-        invidiousCaptions: ['', '', ''],
-        invidiousRelatedVideos: true,
-        invidiousAnnotations: false,
-        invidiousExtendDesc: false,
-        invidiousVrMode: true,
-        invidiousSavePlayerPos: false,
-        invidiousRegion: 'US',
-        invidiousDarkMode: '',
-        invidiousThinMode: false,
-        invidiousDefaultHome: 'Popular',
-        invidiousFeedMenuList: ['Popular', 'Trending']
-    })
-}
-
-async function initInvidiousCookies() {
-    console.log('initInvidiousCookies() starting')
-    await browser.storage.local.get(
-        [
-            "disableYoutube",
-            "youtubeFrontend",
-            "youtubeProtocol",
-
-            "enableYoutubeCustomSettings",
-
-            "invidiousNormalRedirectsChecks",
-            "invidiousNormalCustomRedirects",
-            "invidiousTorRedirectsChecks",
-            "invidiousTorCustomRedirects",
-
-            "youtubeListen",
-            "youtubeVolume",
-            "youtubeAutoplay",
-            "invidiousQuality",
-            "invidiousAlwaysProxy",
-            "invidiousQuality",
-            "invidiousPlayerStyle",
-            "invidiousVideoLoop",
-            "invidiousContinueAutoplay",
-            "invidiousContinue",
-            "invidiousSpeed",
-            "invidiousQualityDash",
-            "invidiousComments",
-            "invidiousCaptions",
-            "invidiousRelatedVideos",
-            "invidiousAnnotations",
-            "invidiousExtendDesc",
-            "invidiousVrMode",
-            "invidiousSavePlayerPos",
-            "invidiousRegion",
-            "invidiousDarkMode",
-            "invidiousThinMode",
-            "invidiousDefaultHome",
-            "invidiousFeedMenuList",
-        ],
-        r => {
-            if (!r.disableYoutube && r.youtubeFrontend == 'invidious' && r.enableYoutubeCustomSettings) {
-                let checkedInstances;
-                if (r.youtubeProtocol == 'normal')
-                    checkedInstances = [...r.invidiousNormalRedirectsChecks, ...r.invidiousNormalCustomRedirects]
-                else if (r.youtubeProtocol == 'tor')
-                    checkedInstances = [...r.invidiousTorRedirectsChecks, ...r.invidiousTorCustomRedirects]
-
-                for (const instanceUrl of checkedInstances)
-                    browser.cookies.get(
-                        { url: instanceUrl, name: "PREFS" },
-                        cookie => {
-                            let prefs = {};
-                            if (cookie) {
-                                prefs = JSON.parse(decodeURIComponent(cookie.value));
-                                browser.cookies.remove({ url: instanceUrl, name: "PREFS" });
-                            }
-
-                            prefs.local = r.invidiousAlwaysProxy;
-                            prefs.video_loop = r.invidiousVideoLoop;
-                            prefs.continue_autoplay = r.invidiousContinueAutoplay;
-                            prefs.continue = r.invidiousContinue;
-                            prefs.listen = r.youtubeListen;
-                            prefs.speed = parseFloat(r.invidiousSpeed);
-                            prefs.quality = r.invidiousQuality;
-                            prefs.quality_dash = r.invidiousQualityDash;
-
-                            prefs.comments = r.invidiousComments;
-                            prefs.captions = r.invidiousCaptions;
-
-                            prefs.related_videos = r.invidiousRelatedVideos;
-                            prefs.annotations = r.invidiousAnnotations
-                            prefs.extend_desc = r.invidiousExtendDesc;
-                            prefs.vr_mode = r.invidiousVrMode;
-                            prefs.save_player_pos = r.invidiousSavePlayerPos;
-
-                            prefs.volume = parseInt(r.youtubeVolume);
-                            prefs.player_style = r.invidiousPlayerStyle;
-                            prefs.autoplay = r.youtubeAutoplay;
-
-                            prefs.region = r.invidiousRegion;
-                            prefs.dark_mode = r.invidiousDarkMode;
-                            prefs.thin_mode = r.invidiousThinMode;
-                            prefs.default_home = r.invidiousDefaultHome;
-                            prefs.feed_menu = r.invidiousFeedMenuList;
-
-                            browser.cookies.set({
-                                url: instanceUrl, name: "PREFS",
-                                value: encodeURIComponent(JSON.stringify(prefs))
-                            })
-                        }
-                    )
-            }
-        }
-    )
-}
-
-export default {
-    initDefaults,
-    initInvidiousCookies,
-}
\ No newline at end of file
diff --git a/src/assets/javascripts/helpers/youtube/piped-preferences.js b/src/assets/javascripts/helpers/youtube/piped-preferences.js
index c6a5707a..8a1f2d0d 100644
--- a/src/assets/javascripts/helpers/youtube/piped-preferences.js
+++ b/src/assets/javascripts/helpers/youtube/piped-preferences.js
@@ -2,40 +2,39 @@ window.browser = window.browser || window.chrome;
 
 browser.storage.local.get(
     [
-        "youtubeVolume",
-        "youtubeAutoplay",
-        "youtubeListen",
-
-        "pipedBufferGoal",
-        "pipedComments",
-        "pipedDisableLBRY",
-        "pipedEnabledCodecs",
-        "pipedHomepage",
-        "pipedMinimizeDescription",
-        "pipedProxyLBRY",
-        "pipedQuality",
-        "pipedRegion",
-        "pipedSelectedSkip",
-        "pipedSponsorblock",
-        "pipedDdlTheme",
-        "pipedWatchHistory",
+        "piped_bufferGoal",
+        "piped_comments",
+        "piped_disableLBRY",
+        "piped_enabledCodecs",
+        "piped_homepage",
+        "piped_listen",
+        "piped_minimizeDescription",
+        "piped_playerAutoPlay",
+        "piped_proxyLBRY",
+        "piped_quality",
+        "piped_region",
+        "piped_selectedSkip",
+        "piped_sponsorblock",
+        "piped_theme",
+        "piped_volume",
+        "piped_watchHistory",
     ],
     r => {
-        localStorage.setItem("bufferGoal", r.pipedBufferGoal.toString());
-        localStorage.setItem("comments", r.pipedComments);
-        localStorage.setItem("disableLBRY", r.pipedDisableLBRY);
-        localStorage.setItem("enabledCodecs", r.pipedEnabledCodecs);
-        localStorage.setItem("homepage", r.pipedHomepage);
-        localStorage.setItem("listen", r.youtubeListen);
-        localStorage.setItem("minimizeDescription", r.pipedMinimizeDescription);
-        localStorage.setItem("playerAutoPlay", r.youtubeAutoplay);
-        localStorage.setItem("proxyLBRY", r.pipedProxyLBRY);
-        localStorage.setItem("quality", r.pipedQuality);
-        localStorage.setItem("region", r.pipedRegion);
-        localStorage.setItem("selectedSkip", r.pipedSelectedSkip);
-        localStorage.setItem("sponsorblock", r.pipedSponsorblock);
-        localStorage.setItem("theme", r.pipedDdlTheme);
-        localStorage.setItem("volume", r.youtubeVolume / 100);
-        localStorage.setItem("watchHistory", r.pipedWatchHistory);
+        localStorage.setItem("bufferGoal", r.piped_bufferGoal);
+        localStorage.setItem("comments", r.piped_comments);
+        localStorage.setItem("disableLBRY", r.piped_disableLBRY);
+        localStorage.setItem("enabledCodecs", r.piped_enabledCodecs);
+        localStorage.setItem("homepage", r.piped_homepage);
+        localStorage.setItem("listen", r.piped_listen);
+        localStorage.setItem("minimizeDescription", r.piped_minimizeDescription);
+        localStorage.setItem("playerAutoPlay", r.piped_playerAutoPlay);
+        localStorage.setItem("proxyLBRY", r.piped_proxyLBRY);
+        localStorage.setItem("quality", r.piped_quality);
+        localStorage.setItem("region", r.piped_region);
+        localStorage.setItem("selectedSkip", r.piped_selectedSkip);
+        localStorage.setItem("sponsorblock", r.piped_sponsorblock);
+        localStorage.setItem("theme", r.piped_theme);
+        localStorage.setItem("volume", r.piped_volume);
+        localStorage.setItem("watchHistory", r.piped_watchHistory);
     }
 )
\ No newline at end of file
diff --git a/src/assets/javascripts/helpers/youtube/piped.js b/src/assets/javascripts/helpers/youtube/piped.js
index 10bec749..e1f7b0df 100644
--- a/src/assets/javascripts/helpers/youtube/piped.js
+++ b/src/assets/javascripts/helpers/youtube/piped.js
@@ -1,27 +1,76 @@
+"use strict";
+window.browser = window.browser || window.chrome;
+
+import commonHelper from '../common.js'
+
 async function initDefaults() {
-    await browser.storage.local.set({
-        youtubeVolume: 100,
-        youtubeAutoplay: false,
-        youtubeListen: false,
+  await browser.storage.local.set({
+    youtubeVolume: 100,
+    youtubeAutoplay: false,
+    youtubeListen: false,
 
-        pipedBufferGoal: 300,
-        pipedComments: true,
-        pipedDisableLBRY: false,
-        pipedEnabledCodecs: ["av1", "vp9", "avc"],
-        pipedHomepage: "trending",
-        pipedMinimizeDescription: false,
-        pipedProxyLBRY: false,
-        pipedQuality: 0,
-        pipedRegion: "US",
-        pipedSelectedSkip: ["sponsor", "interaction", "selfpromo", "music_offtopic"],
-        pipedSponsorblock: true,
-        pipedDdlTheme: 'auto',
-        pipedWatchHistory: false,
-    })
+    pipedBufferGoal: 300,
+    pipedComments: true,
+    pipedDisableLBRY: false,
+    pipedEnabledCodecs: ["av1", "vp9", "avc"],
+    pipedHomepage: "trending",
+    pipedMinimizeDescription: false,
+    pipedProxyLBRY: false,
+    pipedQuality: 0,
+    pipedRegion: "US",
+    pipedSelectedSkip: ["sponsor", "interaction", "selfpromo", "music_offtopic"],
+    pipedSponsorblock: true,
+    pipedDdlTheme: 'auto',
+    pipedWatchHistory: false,
+  })
 }
 
-function initPipedLocalStorage(tabId) {
-    if (!disable && frontend == 'piped' && enableCustomSettings)
+async function copyPipedLocalStorage(url, tabId) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "pipedNormalRedirectsChecks",
+        "pipedNormalCustomRedirects",
+        "pipedTorRedirectsChecks",
+        "pipedTorCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(url);
+        if (![
+          ...r.pipedNormalCustomRedirects,
+          ...r.pipedNormalRedirectsChecks,
+          ...r.pipedTorRedirectsChecks,
+          ...r.pipedTorCustomRedirects,
+        ].includes(protocolHost)) resolve();
+        browser.tabs.executeScript(
+          tabId,
+          {
+            file: "/assets/javascripts/helpers/youtube/get_piped_settings.js",
+            runAt: "document_start"
+          }
+        );
+        resolve(true);
+      })
+  })
+}
+
+async function initPipedLocalStorage(url, tabId) {
+  browser.storage.local.get(
+    [
+      "youtubeProtocol",
+      "pipedNormalRedirectsChecks",
+      "pipedNormalCustomRedirects",
+      "pipedTorRedirectsChecks",
+      "pipedTorCustomRedirects",
+    ],
+    r => {
+      let protocolHost = commonHelper.protocolHost(url);
+      if (![
+        ...r.pipedNormalRedirectsChecks,
+        ...r.pipedTorRedirectsChecks,
+        ...r.pipedNormalCustomRedirects,
+        ...r.pipedTorCustomRedirects,
+      ].includes(protocolHost)) return;
       browser.tabs.executeScript(
         tabId,
         {
@@ -29,9 +78,12 @@ function initPipedLocalStorage(tabId) {
           runAt: "document_start"
         }
       );
-  }
+      return true;
+    })
+}
 
 export default {
-    initDefaults,
-    initPipedLocalStorage
+  initDefaults,
+  initPipedLocalStorage,
+  copyPipedLocalStorage,
 }
\ No newline at end of file
diff --git a/src/assets/javascripts/helpers/youtube/youtube.js b/src/assets/javascripts/helpers/youtube/youtube.js
index 7c4ad8c8..cf6f9074 100644
--- a/src/assets/javascripts/helpers/youtube/youtube.js
+++ b/src/assets/javascripts/helpers/youtube/youtube.js
@@ -3,7 +3,6 @@
 window.browser = window.browser || window.chrome;
 
 import commonHelper from '../common.js'
-import invidious from './invidious.js'
 import piped from './piped.js';
 import pipedMaterial from './pipedMaterial.js';
 
@@ -62,63 +61,27 @@ let
   protocol,
   OnlyEmbeddedVideo,
   frontend,
-  youtubeEmbedFrontend,
-  bypassWatchOnYoutube,
-  alwaysUsePreferred;
+  youtubeEmbedFrontend;
 
 function redirect(url, details, initiator) {
   if (disable) return null;
 
   let protocolHost = commonHelper.protocolHost(url);
 
-  let isInvidious = [
-    ...redirects.invidious.normal,
-    ...redirects.invidious.tor
-  ].includes(protocolHost);
-
-  let isCheckedInvidious = [
-    ...invidiousNormalRedirectsChecks,
-    ...invidiousNormalCustomRedirects,
-    ...invidiousTorRedirectsChecks,
-    ...invidiousTorCustomRedirects,
-  ].includes(protocolHost);
-
-  let isPiped = [
-    ...redirects.piped.normal,
-    ...redirects.piped.tor
-  ].includes(protocolHost);
-
-  let isCheckedPiped = [
-    ...pipedNormalRedirectsChecks,
-    ...pipedNormalCustomRedirects,
-    ...pipedTorRedirectsChecks,
-    ...pipedTorCustomRedirects,
-  ].includes(protocolHost)
-
-  if (
-    alwaysUsePreferred && frontend == 'invidious' &&
-    (isInvidious || isPiped) && !isCheckedInvidious
-  ) return switchInstance(url);
-
-  if (
-    alwaysUsePreferred && frontend == 'piped' &&
-    (isInvidious || isPiped) && !isCheckedPiped
-  ) return switchInstance(url);
-
   if (!targets.some(rx => rx.test(url.href))) return null;
 
   if (
-    bypassWatchOnYoutube &&
     initiator && (
-      [...redirects.invidious.normal,
-      ...invidiousNormalCustomRedirects,
-      ...redirects.invidious.tor,
-      ...invidiousTorCustomRedirects,
-
-      ...redirects.piped.normal,
-      ...redirects.piped.tor,
-      ...pipedNormalCustomRedirects,
-      ...pipedTorCustomRedirects
+      [
+        ...redirects.invidious.normal,
+        ...invidiousNormalCustomRedirects,
+        ...redirects.invidious.tor,
+        ...invidiousTorCustomRedirects,
+
+        ...redirects.piped.normal,
+        ...redirects.piped.tor,
+        ...pipedNormalCustomRedirects,
+        ...pipedTorCustomRedirects
       ].includes(initiator.origin)
     )
   ) return 'BYPASSTAB';
@@ -192,19 +155,32 @@ function redirect(url, details, initiator) {
 }
 
 function reverse(url) {
-  let protocolHost = commonHelper.protocolHost(url);
-  if (![
-    ...redirects.invidious.normal,
-    ...redirects.invidious.tor,
-    ...invidiousNormalCustomRedirects,
-    ...invidiousTorCustomRedirects,
-    ...redirects.piped.normal,
-    ...redirects.piped.tor,
-    ...pipedNormalCustomRedirects,
-    ...pipedTorCustomRedirects,
-  ].includes(protocolHost)) return;
+  browser.storage.local.get(
+    [
+      "youtubeRedirects",
+      "invidiousNormalCustomRedirects",
+      "invidiousTorCustomRedirects",
+      "pipedNormalCustomRedirects",
+      "pipedTorCustomRedirects",
+    ],
+    r => {
+      let protocolHost = commonHelper.protocolHost(url);
+      if (![
+        ...r.youtubeRedirects.invidious.normal,
+        ...r.youtubeRedirects.invidious.tor,
+
+        ...r.youtubeRedirects.piped.normal,
+        ...r.youtubeRedirects.piped.tor,
+
+        ...r.invidiousNormalCustomRedirects,
+        ...r.invidiousTorCustomRedirects,
 
-  return `https://youtube.com${url.pathname}${url.search}`;
+        ...r.pipedNormalCustomRedirects,
+        ...r.pipedTorCustomRedirects,
+      ].includes(protocolHost)) return;
+
+      return `https://youtube.com${url.pathname}${url.search}`;
+    })
 }
 
 function switchInstance(url) {
@@ -351,13 +327,10 @@ async function initDefaults() {
           pipedMaterialTorRedirectsChecks: [...redirects.pipedMaterial.tor],
           pipedMaterialTorCustomRedirects: [],
 
-          alwaysUsePreferred: false,
           youtubeEmbedFrontend: 'invidious',
           youtubeProtocol: 'normal',
-          bypassWatchOnYoutube: true,
         })
 
-        await invidious.initDefaults();
         await piped.initDefaults();
         await pipedMaterial.initDefaults();
         resolve();
@@ -394,10 +367,8 @@ async function init() {
           "pipedMaterialTorRedirectsChecks",
           "pipedMaterialTorCustomRedirects",
 
-          "alwaysUsePreferred",
           "youtubeEmbedFrontend",
           "youtubeProtocol",
-          "bypassWatchOnYoutube",
         ],
         r => {
           redirects = r.youtubeRedirects;
@@ -426,18 +397,46 @@ async function init() {
 
           youtubeEmbedFrontend = r.youtubeEmbedFrontend;
           OnlyEmbeddedVideo = r.OnlyEmbeddedVideo;
-          alwaysUsePreferred = r.alwaysUsePreferred;
-          bypassWatchOnYoutube = r.bypassWatchOnYoutube;
 
           resolve();
         });
     })
 }
 
+async function initInvidiousCookies(from) {
+  return new Promise(resolve => {
+    browser.storage.local.get(
+      [
+        "youtubeProtocol",
+        "invidiousNormalRedirectsChecks",
+        "invidiousNormalCustomRedirects",
+        "invidiousTorRedirectsChecks",
+        "invidiousTorCustomRedirects",
+      ],
+      r => {
+        let protocolHost = commonHelper.protocolHost(from);
+        if (![
+          ...r.invidiousNormalRedirectsChecks,
+          ...r.invidiousTorRedirectsChecks,
+          ...r.invidiousNormalCustomRedirects,
+          ...r.invidiousTorCustomRedirects,
+        ].includes(protocolHost)) resolve();
+        let checkedInstances;
+        if (r.youtubeProtocol == 'normal') checkedInstances = [...r.invidiousNormalRedirectsChecks, ...r.invidiousNormalCustomRedirects]
+        else if (r.youtubeProtocol == 'tor') checkedInstances = [...r.invidiousTorRedirectsChecks, ...r.invidiousTorCustomRedirects]
+        for (const to of checkedInstances)
+          commonHelper.copyCookie('invidious', from, to, 'PREFS');
+        resolve(true);
+      }
+    )
+  }
+  )
+}
+
 let
   initPipedLocalStorage = piped.initPipedLocalStorage,
   initPipedMaterialLocalStorage = pipedMaterial.initPipedMaterialLocalStorage,
-  initInvidiousCookies = invidious.initInvidiousCookies;
+  copyPipedLocalStorage = piped.copyPipedLocalStorage;
 
 export default {
   initPipedLocalStorage,
@@ -452,6 +451,8 @@ export default {
 
   isPipedorInvidious,
 
+  copyPipedLocalStorage,
+
   initDefaults,
 
   init,
diff --git a/src/assets/javascripts/helpers/youtubeMusic.js b/src/assets/javascripts/helpers/youtubeMusic.js
index 0b06bfa3..98549147 100644
--- a/src/assets/javascripts/helpers/youtubeMusic.js
+++ b/src/assets/javascripts/helpers/youtubeMusic.js
@@ -28,7 +28,6 @@ function isYoutubeMusic(url, initiator) {
 }
 
 function redirect(url, type) {
-
     // Video
     // https://music.youtube.com/watch?v=_PkGiKBW-DA&list=RDAMVM_PkGiKBW-DA
     // https://beatbump.ml/listen?id=_PkGiKBW-DA&list=RDAMVM_PkGiKBW-DA
@@ -69,7 +68,6 @@ function redirect(url, type) {
 async function initDefaults() {
     await browser.storage.local.set({
         disableYoutubeMusic: true,
-
         youtubeMusicRedirects: redirects,
 
         beatbumpNormalRedirectsChecks: [...redirects.beatbump.normal],
diff --git a/src/instances/cloudflare.json b/src/instances/cloudflare.json
index 9a9a3fc8..5424cc57 100644
--- a/src/instances/cloudflare.json
+++ b/src/instances/cloudflare.json
@@ -7,7 +7,6 @@
   "https://piped.moomoo.me",
   "https://piped.syncpundit.com",
   "https://piped.mha.fi",
-  "https://piped.shimul.me/",
   "https://send.silkky.cloud",
   "https://nhanh.cloud",
   "https://nitter.domain.glass",
diff --git a/src/instances/data.json b/src/instances/data.json
index f2ee6ccb..d095e955 100644
--- a/src/instances/data.json
+++ b/src/instances/data.json
@@ -40,10 +40,9 @@
       "https://il.ax",
       "https://piped.syncpundit.com",
       "https://piped.mha.fi",
-      "https://piped.shimul.me/",
+      "https://piped.shimul.me",
       "https://piped.mint.lgbt",
-      "https://piped.privacy.com.de",
-      "https://piped.notyourcomputer.net"
+      "https://piped.privacy.com.de"
     ],
     "tor": [
       "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion"
@@ -358,7 +357,6 @@
       "https://search.disroot.org",
       "https://search.ethibox.fr",
       "https://search.jpope.org",
-      "https://search.ononoki.org",
       "https://search.snopyta.org",
       "https://search.stinpriza.org",
       "https://search.trom.tf",
@@ -367,6 +365,7 @@
       "https://searx.dresden.network",
       "https://searx.fossencdi.org",
       "https://searx.gnu.style",
+      "https://searx.jaska.cc",
       "https://searx.josie.lol",
       "https://searx.kujonello.cf",
       "https://searx.mxchange.org",
@@ -377,6 +376,7 @@
       "https://searx.nixnet.services",
       "https://searx.openhoofd.nl",
       "https://searx.org",
+      "https://searx.ppeb.me",
       "https://searx.pwoss.org",
       "https://searx.rasp.fr",
       "https://searx.ru",
@@ -427,6 +427,7 @@
       "https://search.bus-hit.me",
       "https://search.mdosch.de",
       "https://search.neet.works",
+      "https://search.ononoki.org",
       "https://search.privacyguides.net",
       "https://search.rabbit-company.com",
       "https://search.roombob.cat",
@@ -439,12 +440,12 @@
       "https://searx.esmailelbob.xyz",
       "https://searx.fmac.xyz",
       "https://searx.gnous.eu",
-      "https://searx.jaska.cc",
       "https://searx.loafland.xyz",
       "https://searx.mha.fi",
       "https://searx.namejeff.xyz",
       "https://searx.orion-hub.fr",
       "https://searx.prvcy.eu",
+      "https://searx.sev.monster",
       "https://searx.tiekoetter.com",
       "https://searxng.zackptg5.com",
       "https://www.webrats.xyz"
@@ -490,6 +491,7 @@
     ]
   },
   "peertube": [
+    "https://peertube.io",
     "https://peertube.echelon4.space",
     "https://dalek.zone",
     "https://www.kotikoff.net",
@@ -507,7 +509,6 @@
     "https://pt.k2s.sk",
     "https://video.xonumi.com",
     "https://gameplay.wtf",
-    "https://video.espr.moe",
     "https://peertube.louis.software",
     "https://tube.zrx.one",
     "https://video.cats-home.net",
@@ -556,7 +557,6 @@
     "https://media.zat.im",
     "https://videos.sadx.moe",
     "https://pt.nospy.net",
-    "https://peertube.thele.me",
     "https://yhwh.tube",
     "https://tube.zee.li",
     "https://peerlook.ru",
@@ -856,7 +856,6 @@
     "https://media.fsfe.org",
     "https://flytandemeistring.space",
     "https://xn--modervr-jxa.space",
-    "https://watch.daspr.io",
     "https://video.windfluechter.org",
     "https://pocketnetpeertube10.nohost.me",
     "https://tube.io18.top",
diff --git a/src/instances/piped.json b/src/instances/piped.json
index a6c2cce1..b01bf55d 100644
--- a/src/instances/piped.json
+++ b/src/instances/piped.json
@@ -9,8 +9,7 @@
     "https://piped.mha.fi",
     "https://piped.shimul.me",
     "https://piped.mint.lgbt",
-    "https://piped.privacy.com.de",
-    "https://piped.notyourcomputer.net"
+    "https://piped.privacy.com.de"
   ],
   "tor": [
     "http://piped2bbch4xslbl2ckr6k62q56kon56ffowxaqzy42ai22a4sash3ad.onion"
diff --git a/src/pages/background/background.js b/src/pages/background/background.js
index 7bf960c9..f7d05913 100644
--- a/src/pages/background/background.js
+++ b/src/pages/background/background.js
@@ -93,29 +93,17 @@ browser.webRequest.onBeforeRequest.addListener(
     if (youtubeMusicHelper.isYoutubeMusic(url, initiator)) newUrl = youtubeMusicHelper.redirect(url, details.type)
 
     if (!newUrl) newUrl = twitterHelper.redirect(url, initiator);
-
     if (!newUrl) newUrl = instagramHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = await mapsHelper.redirect(url, initiator);
-
     if (!newUrl) newUrl = redditHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = mediumHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = imgurHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = tiktokHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = sendTargetsHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = peertubeHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = lbryHelper.redirect(url, details.type, initiator);
-
     if (!newUrl) newUrl = translateHelper.redirect(url);
-
     if (!newUrl) newUrl = searchHelper.redirect(url)
-
     if (!newUrl) newUrl = wikipediaHelper.redirect(url);
 
     if (
@@ -198,7 +186,6 @@ browser.webRequest.onResponseStarted.addListener(
   details => {
     if (!generalHelper.getAutoRedirect()) return null;
 
-    console.log('details.statusCode', details.statusCode);
     if (details.type == 'main_frame' && (details.statusCode == 502 || details.statusCode == 503 || details.statusCode == 504)) {
       // if (details.type == 'main_frame' && details.statusCode >= 200) {
       // console.log("statusCode", details.statusCode);
@@ -226,10 +213,10 @@ browser.tabs.onUpdated.addListener(
     let url;
     try { url = new URL(changeInfo.url); }
     catch (_) { return }
-    if (youtubeHelper.isPipedorInvidious(url, 'main_frame', 'piped')) youtubeHelper.initPipedLocalStorage(tabId);
-    if (youtubeHelper.isPipedorInvidious(url, 'main_frame', 'pipedMaterial')) youtubeHelper.initPipedMaterialLocalStorage(tabId);
-    if (translateHelper.isTranslateRedirects(url, 'main_frame', 'lingva')) translateHelper.initLingvaLocalStorage(tabId);
-    if (instagramHelper.isBibliogram(url)) instagramHelper.initBibliogramCookies(url);
+    let result = await youtubeHelper.initPipedLocalStorage(url, tabId);
+    // if (youtubeHelper.isPipedorInvidious(url, 'main_frame', 'pipedMaterial')) youtubeHelper.initPipedMaterialLocalStorage(tabId);
+    // if (translateHelper.isTranslateRedirects(url, 'main_frame', 'lingva')) translateHelper.initLingvaLocalStorage(tabId);
+    // if (instagramHelper.isBibliogram(url)) instagramHelper.initBibliogramCookies(url);
     // if (changeInfo.url && youtubeHelper.isPipedorInvidious(url, 'main_frame', 'pipedMaterial')) youtubeHelper.initPipedMaterialLocalStorage(tabId);
   }
 );
@@ -237,27 +224,16 @@ browser.tabs.onUpdated.addListener(
 async function changeWholeInstance(url) {
   await wholeInit();
   let newUrl = youtubeHelper.switchInstance(url);
-
   if (!newUrl) newUrl = twitterHelper.switchInstance(url);
-
   if (!newUrl) newUrl = instagramHelper.switchInstance(url);
-
   if (!newUrl) newUrl = redditHelper.switchInstance(url);
-
   if (!newUrl) newUrl = searchHelper.switchInstance(url);
-
   if (!newUrl) newUrl = translateHelper.switchInstance(url);
-
   if (!newUrl) newUrl = mediumHelper.switchInstance(url);
-
   if (!newUrl) newUrl = sendTargetsHelper.switchInstance(url);
-
   if (!newUrl) newUrl = peertubeHelper.switchInstance(url);
-
   if (!newUrl) newUrl = imgurHelper.switchInstance(url);
-
   if (!newUrl) newUrl = wikipediaHelper.switchInstance(url);
-
   return newUrl;
 }
 
diff --git a/src/pages/options/general/general.html b/src/pages/options/general/general.html
index c8a8b3fc..51011816 100644
--- a/src/pages/options/general/general.html
+++ b/src/pages/options/general/general.html
@@ -11,9 +11,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a class="selected" href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a class="selected" href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -24,33 +24,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -63,14 +63,6 @@
       </select>
     </div>
     <div class="some-block option-block">
-      <h4 data-localise="__MSG_applyTheme__">Apply Theme to sites</h4>
-      <input id="apply-theme-to-sites" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_alwaysPref__">Always use Preferred Instances</h4>
-      <input id="always-use-preferred" type="checkbox">
-    </div>
-    <div class="some-block option-block">
       <h4 data-localise="__MSG_autoRedirect__">Auto Redirect of offline instances</h4>
       <input id="auto-redirect" type="checkbox">
     </div>
diff --git a/src/pages/options/general/general.js b/src/pages/options/general/general.js
index 2fab94fb..89302d5c 100644
--- a/src/pages/options/general/general.js
+++ b/src/pages/options/general/general.js
@@ -57,20 +57,10 @@ resetSettingsElement.addEventListener("click",
   }
 );
 
-let alwaysUsePreferredElement = document.getElementById("always-use-preferred")
-alwaysUsePreferredElement.addEventListener("change",
-  event => generalHelper.setAlwaysUsePreferred(event.target.checked)
-);
-
 let autoRedirectElement = document.getElementById("auto-redirect")
 autoRedirectElement.addEventListener("change",
   event => generalHelper.setAutoRedirect(event.target.checked)
 );
-
-let applyThemeToSitesElement = document.getElementById("apply-theme-to-sites")
-applyThemeToSitesElement.addEventListener("change",
-  event => generalHelper.setApplyThemeToSites(event.target.checked)
-);
 let themeElement = document.getElementById("theme");
 themeElement.addEventListener("change", event => {
   const value = event.target.options[theme.selectedIndex].value;
@@ -96,10 +86,8 @@ for (const frontend of generalHelper.allPopupFrontends)
   )
 
 generalHelper.init().then(() => {
-  alwaysUsePreferredElement.checked = generalHelper.getAlwaysUsePreferred();
   autoRedirectElement.checked = generalHelper.getAutoRedirect();
   themeElement.value = generalHelper.getTheme();
-  applyThemeToSitesElement.checked = generalHelper.getApplyThemeToSites();
   instanceTypeElement.addEventListener("change",
     event => {
       instanceType = event.target.options[instanceTypeElement.selectedIndex].value
@@ -117,13 +105,14 @@ generalHelper.init().then(() => {
   function calcExceptionsCustomInstances() {
     document.getElementById("exceptions-custom-checklist").innerHTML =
       [...exceptionsCustomInstances.url, ...exceptionsCustomInstances.regex].map(
-        (x) => `<div>${x}<button class="add" id="clear-${x}">
-                      <svg xmlns="http://www.w3.org/2000/svg" height="20px" viewBox="0 0 24 24" width="20px"
-                      fill="currentColor">
-                        <path d="M0 0h24v24H0V0z" fill="none" />
-                        <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>
+        (x) => `<div>
+                  ${x}
+                  <button class="add" id="clear-${x}">
+                    <svg xmlns="http://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');
diff --git a/src/pages/options/general/general.pug b/src/pages/options/general/general.pug
index b5b46d5f..13e18be6 100644
--- a/src/pages/options/general/general.pug
+++ b/src/pages/options/general/general.pug
@@ -15,14 +15,6 @@ body.option(dir="auto")
                 option(value="dark" data-localise="__MSG_dark__") Dark
 
         .some-block.option-block
-            h4(data-localise="__MSG_applyTheme__") Apply Theme to sites
-            input#apply-theme-to-sites(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_alwaysPref__") Always use Preferred Instances
-            input#always-use-preferred(type="checkbox")
-
-        .some-block.option-block
             h4(data-localise="__MSG_autoRedirect__") Auto Redirect of offline instances
             input#auto-redirect(type="checkbox")
 
diff --git a/src/pages/options/imgur/imgur.html b/src/pages/options/imgur/imgur.html
index 4b529e07..d537acff 100644
--- a/src/pages/options/imgur/imgur.html
+++ b/src/pages/options/imgur/imgur.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a class="selected" href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/instagram/instagram.html b/src/pages/options/instagram/instagram.html
index 866e5ed7..b03040b7 100644
--- a/src/pages/options/instagram/instagram.html
+++ b/src/pages/options/instagram/instagram.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/instagram/instagram.js b/src/pages/options/instagram/instagram.js
index 6b29d869..39d11426 100644
--- a/src/pages/options/instagram/instagram.js
+++ b/src/pages/options/instagram/instagram.js
@@ -1,25 +1,25 @@
 import instagramHelper from "../../../assets/javascripts/helpers/instagram.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableInstagramElement = document.getElementById("disable-bibliogram");
-let protocolElement = document.getElementById("protocol");
+const disable = document.getElementById("disable-bibliogram");
+const protocol = document.getElementById("protocol");
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disableInstagram: disableInstagramElement.checked,
-        instagramProtocol: protocolElement.value,
+        disableInstagram: disable.checked,
+        instagramProtocol: protocol.value,
     })
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
 })
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalDiv = document.getElementsByClassName("normal")[0];
     let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
@@ -31,11 +31,9 @@ browser.storage.local.get(
         "instagramProtocol"
     ],
     r => {
-        disableInstagramElement.checked = !r.disableInstagram;
-
-        let protocol = r.instagramProtocol;
-        protocolElement.value = protocol;
-        changeProtocolSettings(protocol);
+        disable.checked = !r.disableInstagram;
+        protocol.value = r.instagramProtocol;
+        changeProtocolSettings();
     })
 
 commonHelper.processDefaultCustomInstances('instagram', 'bibliogram', 'normal', document);
diff --git a/src/pages/options/lbry/lbry.html b/src/pages/options/lbry/lbry.html
index a5167f21..4e3c1316 100644
--- a/src/pages/options/lbry/lbry.html
+++ b/src/pages/options/lbry/lbry.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a class="selected" href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/lbry/lbry.js b/src/pages/options/lbry/lbry.js
index f1cb49da..fcac7bd8 100644
--- a/src/pages/options/lbry/lbry.js
+++ b/src/pages/options/lbry/lbry.js
@@ -1,25 +1,25 @@
 import lbryHelper from "../../../assets/javascripts/helpers/lbry.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableLbryElement = document.getElementById("disable-lbry");
-let protocolElement = document.getElementById("protocol")
+let disable = document.getElementById("disable-lbry");
+let protocol = document.getElementById("protocol")
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
         disableLbryTargets: !lbryHelper.checked,
-        lbryTargetsProtocol: protocolElement.value,
+        lbryTargetsProtocol: protocol.value,
     });
-    changeProtocolSettings(protocolElement.value)
+    changeProtocolSettings()
 })
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalDiv = document.getElementsByClassName("normal")[0];
     let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
@@ -31,14 +31,14 @@ browser.storage.local.get(
         "lbryTargetsProtocol"
     ],
     r => {
-        disableLbryElement.checked = !r.disableLbryTargets;
+        disable.checked = !r.disableLbryTargets;
+        protocol.value = r.lbryTargetsProtocol;
+        changeProtocolSettings();
+    }
+)
 
-        let protocol = r.lbryTargetsProtocol;
-        protocolElement.value = protocol;
-        changeProtocolSettings(protocol);
-    })
-commonHelper.processDefaultCustomInstances('lbry', 'librarian', 'normal', document);
-commonHelper.processDefaultCustomInstances('lbry', 'librarian', 'tor', document);
+commonHelper.processDefaultCustomInstances('lbryTargets', 'librarian', 'normal', document);
+commonHelper.processDefaultCustomInstances('lbryTargets', 'librarian', 'tor', document);
 
 let latencyElement = document.getElementById("latency");
 let latencyLabel = document.getElementById("latency-label");
diff --git a/src/pages/options/maps/maps.html b/src/pages/options/maps/maps.html
index b1a38063..d7961b31 100644
--- a/src/pages/options/maps/maps.html
+++ b/src/pages/options/maps/maps.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a class="selected" href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a class="selected" href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/maps/maps.js b/src/pages/options/maps/maps.js
index 3f2df54d..7e18def3 100644
--- a/src/pages/options/maps/maps.js
+++ b/src/pages/options/maps/maps.js
@@ -1,35 +1,32 @@
 import mapsHelper from "../../../assets/javascripts/helpers/maps.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableMapsElement = document.getElementById("disable-osm");
-let mapsFrontendElement = document.getElementById("maps-frontend");
+const disable = document.getElementById("disable-osm");
+const frontend = document.getElementById("maps-frontend");
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disableMaps: !disableMapsElement.checked,
-        mapsFrontend: mapsFrontendElement.value,
+        disableMaps: !disable.checked,
+        mapsFrontend: frontend.value,
     })
-    changeFrontendsSettings(mapsFrontendElement.value);
+    changeFrontendsSettings();
 })
 
-let facilDivElement = document.getElementById("facil")
-function changeFrontendsSettings(frontend) {
-    if (frontend == 'facil') {
-        facilDivElement.style.display = 'block';
-    }
-    else if (frontend == 'osm') {
-        facilDivElement.style.display = 'none';
-    }
+const facilDiv = document.getElementById("facil")
+function changeFrontendsSettings() {
+    if (frontend.value == 'facil') facilDiv.style.display = 'block';
+    else if (frontend.value == 'osm') facilDiv.style.display = 'none';
 }
+
 browser.storage.local.get(
     [
         "disableMaps",
         "mapsFrontend",
     ],
     r => {
-        disableMapsElement.checked = !r.disableMaps;
-        mapsFrontendElement.value = r.mapsFrontend;
-        changeFrontendsSettings(r.mapsFrontend);
+        disable.checked = !r.disableMaps;
+        frontend.value = r.mapsFrontend;
+        changeFrontendsSettings();
     }
 )
 commonHelper.processDefaultCustomInstances('maps', 'facil', 'normal', document);
diff --git a/src/pages/options/medium/medium.html b/src/pages/options/medium/medium.html
index 6f863f01..136081d7 100644
--- a/src/pages/options/medium/medium.html
+++ b/src/pages/options/medium/medium.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a class="selected" href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a class="selected" href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/medium/medium.js b/src/pages/options/medium/medium.js
index 753a8d72..786f8f17 100644
--- a/src/pages/options/medium/medium.js
+++ b/src/pages/options/medium/medium.js
@@ -1,8 +1,8 @@
 import mediumHelper from "../../../assets/javascripts/helpers/medium.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableMediumElement = document.getElementById("disable-medium");
-let protocolElement = document.getElementById("protocol")
+let disable = document.getElementById("disable-medium");
+let protocol = document.getElementById("protocol")
 
 browser.storage.local.get(
     [
@@ -10,11 +10,9 @@ browser.storage.local.get(
         "mediumProtocol"
     ],
     r => {
-        disableMediumElement.checked = !r.disableMedium;
-
-        let protocol = r.mediumProtocol;
-        protocolElement.value = protocol;
-        changeProtocolSettings(protocol);
+        disable.checked = !r.disableMedium;
+        protocol.value = r.mediumProtocol;
+        changeProtocolSettings();
     }
 )
 commonHelper.processDefaultCustomInstances('medium', 'scribe', 'normal', document);
@@ -22,20 +20,20 @@ commonHelper.processDefaultCustomInstances('medium', 'scribe', 'tor', document);
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disableMedium: !disableMediumElement.checked,
-        mediumProtocol: protocolElement.value,
+        disableMedium: !disable.checked,
+        mediumProtocol: protocol.value,
     })
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
 })
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalDiv = document.getElementsByClassName("normal")[0];
     let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
diff --git a/src/pages/options/peertube/peertube.html b/src/pages/options/peertube/peertube.html
index e7ebe99b..d5ded94c 100644
--- a/src/pages/options/peertube/peertube.html
+++ b/src/pages/options/peertube/peertube.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a class="selected" href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/peertube/peertube.js b/src/pages/options/peertube/peertube.js
index 3e2abb2f..818e3fec 100644
--- a/src/pages/options/peertube/peertube.js
+++ b/src/pages/options/peertube/peertube.js
@@ -1,19 +1,17 @@
 import peertubeHelper from "../../../assets/javascripts/helpers/peertube.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disablePeertubeElement = document.getElementById("disable-peertube");
-let protocolElement = document.getElementById("protocol")
+let disable = document.getElementById("disable-peertube");
+let protocol = document.getElementById("protocol")
 browser.storage.local.get(
     [
         "disablePeertubeTargets",
         "peertubeTargetsProtocol"
     ],
     r => {
-        disablePeertubeElement.checked = !r.disablePeertubeTargets;
-
-        let protocol = r.peertubeTargetsProtocol;
-        protocolElement.value = protocol;
-        changeProtocolSettings(protocol);
+        disable.checked = !r.disablePeertubeTargets;
+        protocol.value = r.peertubeTargetsProtocol;
+        changeProtocolSettings();
     }
 )
 commonHelper.processDefaultCustomInstances('peertube', 'simpleertube', 'normal', document);
@@ -21,20 +19,20 @@ commonHelper.processDefaultCustomInstances('peertube', 'simpleertube', 'tor', do
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disablePeertubeTargets: !disablePeertubeElement.checked,
-        peertubeTargetsProtocol: protocolElement.value
+        disablePeertubeTargets: !disable.checked,
+        peertubeTargetsProtocol: protocol.value
     })
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
 })
 
-function changeProtocolSettings(protocol) {
-    let normalDiv = document.getElementsByClassName("normal")[0];
-    let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+function changeProtocolSettings() {
+    const normalDiv = document.getElementsByClassName("normal")[0];
+    const torDiv = document.getElementsByClassName("tor")[0];
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
diff --git a/src/pages/options/reddit/reddit.html b/src/pages/options/reddit/reddit.html
index e3fc40d9..876369f9 100644
--- a/src/pages/options/reddit/reddit.html
+++ b/src/pages/options/reddit/reddit.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -73,27 +73,8 @@
         <option value="tor" data-localise="__MSG_tor__">Tor</option>
       </select>
     </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_bypassReddit__">Bypass "Open in Reddit"</h4>
-      <input id="bypass-watch-on-reddit" type="checkbox">
-    </div>
     <div id="libreddit">
       <hr>
-      <div class="some-block option-block">
-        <h4>Unify cookies across selected instances</h4>
-      </div>
-      <form>
-        <div class="some-block option-block">
-          <input type="url" placeholder="https://libreddit.com">
-          <button class="add" type="submit">
-            <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">
-              <rect fill="none" height="24" width="24"></rect>
-              <path d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z"></path>
-            </svg>
-          </button>
-        </div>
-      </form>
-      <hr>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/reddit/reddit.js b/src/pages/options/reddit/reddit.js
index 65ad284c..52399649 100644
--- a/src/pages/options/reddit/reddit.js
+++ b/src/pages/options/reddit/reddit.js
@@ -5,19 +5,17 @@ let libredditDivElement = document.getElementById("libreddit")
 let tedditDivElement = document.getElementById("teddit")
 
 let disableRedditElement = document.getElementById("disable-reddit");
-let redditFrontendElement = document.getElementById("reddit-frontend");
-let protocolElement = document.getElementById("protocol")
-let bypassWatchOnRedditElement = document.getElementById("bypass-watch-on-reddit")
+let frontend = document.getElementById("reddit-frontend");
+let protocol = document.getElementById("protocol")
 
-document.addEventListener("change", async () => {
-    await browser.storage.local.set({
+document.addEventListener("change", () => {
+    browser.storage.local.set({
         disableReddit: !disableRedditElement.checked,
-        bypassWatchOnReddit: bypassWatchOnRedditElement.checked,
-        redditProtocol: protocolElement.value,
-        redditFrontend: redditFrontendElement.value,
+        redditProtocol: protocol.value,
+        redditFrontend: frontend.value,
     });
-    changeFrontendsSettings(redditFrontendElement.value);
-    changeProtocolSettings(protocolElement.value);
+    changeFrontendsSettings();
+    changeProtocolSettings();
 })
 
 const libredditForm = libredditDivElement.getElementsByTagName('form')[0];
@@ -26,50 +24,49 @@ libredditForm.addEventListener('submit', async event => {
     event.preventDefault();
     const url = new URL(libredditCookies.value);
     redditHelper.initLibredditCookies(url);
-})
+});
+
+const tedditForm = tedditDivElement.getElementsByTagName('form')[0];
+const tedditCookies = tedditForm.getElementsByTagName('input')[0];
+tedditForm.addEventListener('submit', async event => {
+    event.preventDefault();
+    const url = new URL(tedditCookies.value);
+    redditHelper.initTedditCookies(url);
+});
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalLibredditDiv = libredditDivElement.getElementsByClassName("normal")[0];
     let torLibredditDiv = libredditDivElement.getElementsByClassName("tor")[0];
 
     let normalTedditDiv = tedditDivElement.getElementsByClassName("normal")[0];
     let torTedditDiv = tedditDivElement.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalLibredditDiv.style.display = 'block';
         normalTedditDiv.style.display = 'block';
         torTedditDiv.style.display = 'none';
         torLibredditDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalLibredditDiv.style.display = 'none';
         normalTedditDiv.style.display = 'none';
         torTedditDiv.style.display = 'block';
         torLibredditDiv.style.display = 'block';
     }
 }
-function changeFrontendsSettings(frontend) {
-    let frontendElement = document.getElementById("frontend");
-    if (frontend == 'libreddit') {
-        frontendElement.innerHTML = 'Frontend';
+function changeFrontendsSettings() {
+    if (frontend.value == 'libreddit') {
         libredditDivElement.style.display = 'block';
         tedditDivElement.style.display = 'none';
     }
-    else if (frontend == 'teddit') {
-        frontendElement.innerHTML = 'Frontend';
+    else if (frontend.value == 'teddit') {
         libredditDivElement.style.display = 'none';
         tedditDivElement.style.display = 'block';
     }
-    else if (frontend == 'old') {
-        frontendElement.innerHTML = `Frontend: <span style="color:red;">This isn't a fully private frontend</span>`;
-        libredditDivElement.style.display = 'none';
-        tedditDivElement.style.display = 'none';
-    }
 }
 
 browser.storage.local.get(
     [
         "disableReddit",
-        "bypassWatchOnReddit",
         "redditProtocol",
         "redditFrontend",
 
@@ -77,11 +74,10 @@ browser.storage.local.get(
     ],
     r => {
         disableRedditElement.checked = !r.disableReddit
-        bypassWatchOnRedditElement.checked = r.bypassWatchOnReddit
-        protocolElement.value = r.redditProtocol
-        redditFrontendElement.value = r.redditFrontend
-        changeFrontendsSettings(r.redditFrontend);
-        changeProtocolSettings(r.redditProtocol);
+        protocol.value = r.redditProtocol
+        frontend.value = r.redditFrontend
+        changeFrontendsSettings();
+        changeProtocolSettings();
     }
 )
 
diff --git a/src/pages/options/reddit/reddit.pug b/src/pages/options/reddit/reddit.pug
index 7262a7f4..ba23df83 100644
--- a/src/pages/options/reddit/reddit.pug
+++ b/src/pages/options/reddit/reddit.pug
@@ -24,24 +24,8 @@ body.option(dir="auto")
                 option(value="normal" data-localise="__MSG_normal__") Normal
                 option(value="tor" data-localise="__MSG_tor__") Tor
 
-        .some-block.option-block
-            h4(data-localise="__MSG_bypassReddit__") Bypass "Open in Reddit"
-            input#bypass-watch-on-reddit(type="checkbox")
-
         #libreddit
             hr
-            .some-block.option-block
-                h4 Unify cookies across selected instances
-            form
-                .some-block.option-block
-                    input(type="url" placeholder="https://libreddit.com")
-                    button.add(type="submit")
-                        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")
-                            rect(fill="none" height="24" width="24")
-                            path(d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z")
-
-            hr
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://libreddit.com')
diff --git a/src/pages/options/search/search.html b/src/pages/options/search/search.html
index 45fed601..46914d19 100644
--- a/src/pages/options/search/search.html
+++ b/src/pages/options/search/search.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a class="selected" href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a class="selected" href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -154,361 +154,7 @@
       </div>
     </div>
     <div id="searxng">
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_enableCustomSettings__">Enable Custom Settings (will use cookies)</h4>
-        <input id="enable-searxng-custom-settings" type="checkbox">
-      </div>
       <hr>
-      <div class="custom-settings">
-        <div class="some-block option-block">
-          <h2>General</h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Default categories</h4>
-        </div>
-        <div class="checklist-popup">
-          <div> 
-            <div>
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M221.09 64a157.09 157.09 0 10157.09 157.09A157.1 157.1 0 00221.09 64z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path>
-                <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M338.29 338.29L448 448"></path>
-              </svg>General
-            </div>
-            <input class="category_general" type="checkbox">
-          </div>
-          <div> 
-            <div>
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <rect x="48" y="80" width="416" height="352" rx="48" ry="48" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></rect>
-                <circle cx="336" cy="176" r="32" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></circle>
-                <path d="M304 335.79l-90.66-90.49a32 32 0 00-43.87-1.3L48 352M224 432l123.34-123.34a32 32 0 0143.11-2L464 368" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-              </svg>Images
-            </div>
-            <input class="category_images" type="checkbox">
-          </div>
-          <div> 
-            <div>
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path>
-              </svg>Videos
-            </div>
-            <input class="category_videos" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M368 415.86V72a24.07 24.07 0 00-24-24H72a24.07 24.07 0 00-24 24v352a40.12 40.12 0 0040 40h328" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path>
-                <path d="M416 464h0a48 48 0 01-48-48V128h72a24 24 0 0124 24v264a48 48 0 01-48 48z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path>
-                <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M240 128h64M240 192h64M112 256h192M112 320h192M112 384h192"></path>
-                <path d="M176 208h-64a16 16 0 01-16-16v-64a16 16 0 0116-16h64a16 16 0 0116 16v64a16 16 0 01-16 16z"></path>
-              </svg>News
-            </div>
-            <input class="category_news" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M256 48c-79.5 0-144 61.39-144 137 0 87 96 224.87 131.25 272.49a15.77 15.77 0 0025.5 0C304 409.89 400 272.07 400 185c0-75.61-64.5-137-144-137z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-                <circle cx="256" cy="192" r="48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></circle>
-              </svg>Maps
-            </div>
-            <input class="category_map" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M192 218v-6c0-14.84 10-27 24.24-30.59l174.59-46.68A20 20 0 01416 154v22" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-                <path d="M416 295.94v80c0 13.91-8.93 25.59-22 30l-22 8c-25.9 8.72-52-10.42-52-38h0a33.37 33.37 0 0123-32l51-18.15c13.07-4.4 22-15.94 22-29.85V58a10 10 0 00-12.6-9.61L204 102a16.48 16.48 0 00-12 16v226c0 13.91-8.93 25.6-22 30l-52 18c-13.88 4.68-22 17.22-22 32h0c0 27.58 26.52 46.55 52 38l22-8c13.07-4.4 22-16.08 22-30v-80" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-              </svg>Music
-            </div>
-            <input class="category_music" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M434.8 137.65l-149.36-68.1c-16.19-7.4-42.69-7.4-58.88 0L77.3 137.65c-17.6 8-17.6 21.09 0 29.09l148 67.5c16.89 7.7 44.69 7.7 61.58 0l148-67.5c17.52-8 17.52-21.1-.08-29.09zM160 308.52l-82.7 37.11c-17.6 8-17.6 21.1 0 29.1l148 67.5c16.89 7.69 44.69 7.69 61.58 0l148-67.5c17.6-8 17.6-21.1 0-29.1l-79.94-38.47" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-                <path d="M160 204.48l-82.8 37.16c-17.6 8-17.6 21.1 0 29.1l148 67.49c16.89 7.7 44.69 7.7 61.58 0l148-67.49c17.7-8 17.7-21.1.1-29.1L352 204.48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-              </svg>It
-            </div>
-            <input class="category_it" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true">
-                <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M32 192L256 64l224 128-224 128L32 192z"></path>
-                <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M112 240v128l144 80 144-80V240M480 368V192M256 320v128"></path>
-              </svg>Science
-            </div>
-            <input class="category_science" type="checkbox">
-          </div>
-          <div> 
-            <div>
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0048 48h320a48.14 48.14 0 0048-48V272l-32-152c-5-27-23-40-48-40z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32"></path>
-                <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M48 272h144M320 272h144M192 272a64 64 0 00128 0M144 144h224M128 208h256"></path>
-              </svg>Files
-            </div>
-            <input class="category_files" type="checkbox">
-          </div>
-          <div> 
-            <div> 
-              <svg viewBox="0 0 512 512" aria-hidden="true">
-                <path d="M402 168c-2.93 40.67-33.1 72-66 72s-63.12-31.32-66-72c-3-42.31 26.37-72 66-72s69 30.46 66 72z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-                <path d="M336 304c-65.17 0-127.84 32.37-143.54 95.41-2.08 8.34 3.15 16.59 11.72 16.59h263.65c8.57 0 13.77-8.25 11.72-16.59C463.85 335.36 401.18 304 336 304z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32"></path>
-                <path d="M200 185.94c-2.34 32.48-26.72 58.06-53 58.06s-50.7-25.57-53-58.06C91.61 152.15 115.34 128 147 128s55.39 24.77 53 57.94z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32"></path>
-                <path d="M206 306c-18.05-8.27-37.93-11.45-59-11.45-52 0-102.1 25.85-114.65 76.2-1.65 6.66 2.53 13.25 9.37 13.25H154" fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32"></path>
-              </svg>Social Media
-            </div>
-            <input class="category_social_media" type="checkbox">
-          </div>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Search language</h4>
-          <select class="language">
-            <option value="all">Default language</option>
-            <option value="af-ZA">🇿🇦 Afrikaans (Suid-Afrika) </option>
-            <option value="ca-ES">🇪🇸 Català (Espanya) </option>
-            <option value="da-DK">🇩🇰 Dansk (Danmark) </option>
-            <option value="de">🌐 Deutsch </option>
-            <option value="de-AT">🇦🇹 Deutsch (Österreich) </option>
-            <option value="de-CH">🇨🇭 Deutsch (Schweiz) </option>
-            <option value="de-DE">🇩🇪 Deutsch (Deutschland) </option>
-            <option value="et-EE">🇪🇪 Eesti (Eesti) </option>
-            <option value="en">🌐 English </option>
-            <option value="en-AU">🇦🇺 English (Australia) </option>
-            <option value="en-CA">🇨🇦 English (Canada) </option>
-            <option value="en-GB">🇬🇧 English (United Kingdom) </option>
-            <option value="en-IE">🇮🇪 English (Ireland) </option>
-            <option value="en-MY">🇲🇾 English (Malaysia) </option>
-            <option value="en-NZ">🇳🇿 English (New Zealand) </option>
-            <option value="en-US">🇺🇸 English (United States) </option>
-            <option value="es">🌐 Español </option>
-            <option value="es-AR">🇦🇷 Español (Argentina) </option>
-            <option value="es-CL">🇨🇱 Español (Chile) </option>
-            <option value="es-ES">🇪🇸 Español (España) </option>
-            <option value="es-MX">🇲🇽 Español (México) </option>
-            <option value="fil-PH">🇵🇭 Filipino (Pilipinas) </option>
-            <option value="fr">🌐 Français </option>
-            <option value="fr-BE">🇧🇪 Français (Belgique) </option>
-            <option value="fr-CA">🇨🇦 Français (Canada) </option>
-            <option value="fr-CH">🇨🇭 Français (Suisse) </option>
-            <option value="fr-FR">🇫🇷 Français (France) </option>
-            <option value="hr-HR">🇭🇷 Hrvatski (Hrvatska) </option>
-            <option value="id-ID">🇮🇩 Indonesia (Indonesia) </option>
-            <option value="it-IT">🇮🇹 Italiano (Italia) </option>
-            <option value="sw-TZ">🇹🇿 Kiswahili (Tanzania) </option>
-            <option value="lv-LV">🇱🇻 Latviešu (Latvija) </option>
-            <option value="lt-LT">🇱🇹 Lietuvių (Lietuva) </option>
-            <option value="hu-HU">🇭🇺 Magyar (Magyarország) </option>
-            <option value="nl">🌐 Nederlands </option>
-            <option value="nl-BE">🇧🇪 Nederlands (België) </option>
-            <option value="nl-NL">🇳🇱 Nederlands (Nederland) </option>
-            <option value="no-NO">🇳🇴 Norsk </option>
-            <option value="pl-PL">🇵🇱 Polski (Polska) </option>
-            <option value="pt">🌐 Português </option>
-            <option value="pt-BR">🇧🇷 Português (Brasil) </option>
-            <option value="pt-PT">🇵🇹 Português (Portugal) </option>
-            <option value="ro-RO">🇷🇴 Română (România) </option>
-            <option value="sk-SK">🇸🇰 Slovenčina (Slovensko) </option>
-            <option value="sl-SI">🇸🇮 Slovenščina (Slovenija) </option>
-            <option value="fi-FI">🇫🇮 Suomi (Suomi) </option>
-            <option value="sv-SE">🇸🇪 Svenska (Sverige) </option>
-            <option value="vi-VN">🇻🇳 Tiếng Việt (Việt Nam) </option>
-            <option value="tr-TR">🇹🇷 Türkçe (Türkiye) </option>
-            <option value="is-IS">🇮🇸 Íslenska (Ísland) </option>
-            <option value="cs-CZ">🇨🇿 Čeština (Česko) </option>
-            <option value="el-GR">🇬🇷 Ελληνικά (Ελλάδα) </option>
-            <option value="be-BY">🇧🇾 Беларуская (Беларусь) </option>
-            <option value="bg-BG">🇧🇬 Български (България) </option>
-            <option value="ru-RU">🇷🇺 Русский (Россия) </option>
-            <option value="sr-RS">🇷🇸 Српски (Србија) </option>
-            <option value="uk-UA">🇺🇦 Українська (Україна) </option>
-            <option value="he-IL">🇮🇱 עברית (ישראל) </option>
-            <option value="ar-EG">🇪🇬 العربية (مصر) </option>
-            <option value="fa-IR">🇮🇷 فارسی (ایران) </option>
-            <option value="hi-IN">🇮🇳 हिन्दी (भारत) </option>
-            <option value="th-TH">🇹🇭 ไทย (ไทย) </option>
-            <option value="zh">🌐 中文 </option>
-            <option value="zh-CN">🇨🇳 中文 (中国) </option>
-            <option value="zh-HK">🇭🇰 中文 (中國香港) </option>
-            <option value="zh-TW">🇹🇼 中文 (台灣) </option>
-            <option value="ja-JP">🇯🇵 日本語 (日本) </option>
-            <option value="ko-KR">🇰🇷 한국어 (대한민국) </option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Autocomplete</h4>
-          <select class="autocomplete">
-            <option value=""> - </option>
-            <option value="dbpedia">dbpedia</option>
-            <option value="duckduckgo">duckduckgo</option>
-            <option value="google">google</option>
-            <option value="seznam">seznam</option>
-            <option value="startpage">startpage</option>
-            <option value="swisscows">swisscows</option>
-            <option value="qwant">qwant</option>
-            <option value="wikipedia">wikipedia</option>
-            <option value="brave">brave</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">SafeSearch</h4>
-          <select class="safesearch">
-            <option value="2">Strict</option>
-            <option value="1">Moderate</option>
-            <option value="0">None</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Hostname replace</h4>
-          <input class="hostname_replace" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Open Access DOI rewrite</h4>
-          <input class="oa_doi_rewrite" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Open Access DOI resolver</h4>
-          <select class="doi_resolver">
-            <option value="oadoi.org">oadoi.org - https://oadoi.org/</option>
-            <option value="doi.org">doi.org - https://doi.org/</option>
-            <option value="doai.io">doai.io - https://dissem.in/</option>
-            <option value="sci-hub.se">sci-hub.se - https://sci-hub.se/</option>
-            <option value="sci-hub.do">sci-hub.do - https://sci-hub.do/</option>
-            <option value="scihubtw.tw">scihubtw.tw - https://scihubtw.tw/</option>
-            <option value="sci-hub.st">sci-hub.st - https://sci-hub.st/</option>
-            <option value="sci-hub.bar">sci-hub.bar - https://sci-hub.bar/</option>
-            <option value="sci-hub.it.nf">sci-hub.it.nf - https://sci-hub.it.nf/</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Engine tokens</h4>
-          <input class="tokens" type="text">
-        </div>
-        <hr>
-        <div class="some-block option-block">
-          <h2>User Interface</h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Interface language</h4>
-          <select class="locale">
-            <option value="ar">العربية (Arabic)</option>
-            <option value="bg">Български (Bulgarian)</option>
-            <option value="bo">བོད་སྐད་ (Tibetan)</option>
-            <option value="ca">Català (Catalan)</option>
-            <option value="cs">Čeština (Czech)</option>
-            <option value="cy">Cymraeg (Welsh)</option>
-            <option value="da">Dansk (Danish)</option>
-            <option value="de">Deutsch (German)</option>
-            <option value="el-GR">Ελληνικά, Ελλάδα (Greek, Greece)</option>
-            <option value="en" selected="selected">English</option>
-            <option value="eo">Esperanto</option>
-            <option value="es">Español (Spanish)</option>
-            <option value="et">Eesti (Estonian)</option>
-            <option value="eu">Euskara (Basque)</option>
-            <option value="fa-IR">فارسی, ایران (Persian, Iran)</option>
-            <option value="fi">Suomi (Finnish)</option>
-            <option value="fil">Filipino</option>
-            <option value="fr">Français (French)</option>
-            <option value="gl">Galego (Galician)</option>
-            <option value="he">עברית (Hebrew)</option>
-            <option value="hr">Hrvatski (Croatian)</option>
-            <option value="hu">Magyar (Hungarian)</option>
-            <option value="ia">Interlingua</option>
-            <option value="id">Indonesia (Indonesian)</option>
-            <option value="it">Italiano (Italian)</option>
-            <option value="ja">日本語 (Japanese)</option>
-            <option value="ko">한국어 (Korean)</option>
-            <option value="lt">Lietuvių (Lithuanian)</option>
-            <option value="nb-NO">Norsk bokmål, Norge (Norwegian bokmål, Norway)</option>
-            <option value="nl">Nederlands (Dutch)</option>
-            <option value="nl-BE">Vlaams (Dutch, Belgium)</option>
-            <option value="oc">Occitan</option>
-            <option value="pl">Polski (Polish)</option>
-            <option value="pt">Português (Portuguese)</option>
-            <option value="pt-BR">Português, Brasil (Portuguese, Brazil)</option>
-            <option value="ro">Română (Romanian)</option>
-            <option value="ru">Русский (Russian)</option>
-            <option value="sk">Slovenčina (Slovak)</option>
-            <option value="sl">Slovenščina (Slovenian)</option>
-            <option value="sr">Српски (Serbian)</option>
-            <option value="sv">Svenska (Swedish)</option>
-            <option value="ta">தமிழ் (Tamil)</option>
-            <option value="te">తెలుగు (Telugu)</option>
-            <option value="tr">Türkçe (Turkish)</option>
-            <option value="uk">Українська (Ukrainian)</option>
-            <option value="vi">Tiếng việt (Vietnamese)</option>
-            <option value="zh-Hans-CN">中文, 中国 (Chinese, China)</option>
-            <option value="zh-Hant-TW">中文, 台灣 (Chinese, Taiwan)</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Theme</h4>
-          <select class="theme">
-            <option value="simple">simple</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Theme style</h4>
-          <select class="simple_style">
-            <option value="auto">auto</option>
-            <option value="light">light</option>
-            <option value="dark">dark</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Results on new tabs</h4>
-          <select class="results_on_new_tab">
-            <option value="1">On</option>
-            <option value="0">Off</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Infinite scroll</h4>
-          <select class="infinite_scroll">
-            <option value="1">On</option>
-            <option value="0">Off</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Search on category select</h4>
-          <input class="search_on_category_select" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Vim-like hotkeys</h4>
-          <input class="vim_hotkeys" type="checkbox">
-        </div>
-        <hr>
-        <div class="some-block option-block">
-          <h2>Privacy </h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">HTTP Method</h4>
-          <select class="method">
-            <option value="POST">POST</option>
-            <option value="GET">GET</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Image proxy</h4>
-          <select class="image_proxy">
-            <option value="1">Enabled</option>
-            <option value="0">Disabled</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Query in the page's title</h4>
-          <select class="query_in_title">
-            <option value="1">Enabled</option>
-            <option value="">Disabled</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="">Tracker URL remover</h4>
-          <input class="tracker_url_remover" type="checkbox">
-        </div>
-        <hr>
-      </div>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/search/search.js b/src/pages/options/search/search.js
index 0cbb79f7..47f27c0a 100644
--- a/src/pages/options/search/search.js
+++ b/src/pages/options/search/search.js
@@ -2,116 +2,70 @@ import searchHelper from "../../../assets/javascripts/helpers/search.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
 let searxDiv = document.getElementById("searx");
-
 let searxngDiv = document.getElementById("searxng");
-let searxngCustomSettings = document.getElementById("enable-searxng-custom-settings");
-
-let searxngCustomSettingsDiv = searxngDiv.getElementsByClassName('custom-settings')[0]
-
 let whoogleDiv = document.getElementById("whoogle");
 
-let disableSearchElement = document.getElementById("disable-search");
-let searchFrontendElement = document.getElementById("search-frontend");
-let protocolElement = document.getElementById("protocol")
-
-let customSettingsDivElement = document.getElementsByClassName("custom-settings");
-
-let checkboxes_xpath = document.evaluate(
-  "//div[@id='searxng']//input[@type='checkbox']",
-  document, null, XPathResult.ANY_TYPE, null,
-);
-const inputChecked = [];
-let checkbox = checkboxes_xpath.iterateNext();
-while (checkbox) {
-  inputChecked.push(checkbox);
-  checkbox = checkboxes_xpath.iterateNext();
-}
-
-let textInputs_xpath = document.evaluate(
-  "//div[@id='searxng']//input[@type='text']",
-  document, null, XPathResult.ANY_TYPE, null,
-);
-const inputValues = [];
-let textInput = textInputs_xpath.iterateNext();
-while (textInput) {
-  inputValues.push(textInput);
-  textInput = textInputs_xpath.iterateNext();
-}
-inputValues.push(...searxngCustomSettingsDiv.getElementsByTagName('select'));
+let disable = document.getElementById("disable-search");
+let frontend = document.getElementById("search-frontend");
+let protocol = document.getElementById("protocol")
+
+const searxngForm = searxngDiv.getElementsByTagName('form')[0];
+const searxngCookies = searxngForm.getElementsByTagName('input')[0];
+searxngForm.addEventListener('submit', async event => {
+  event.preventDefault();
+  const url = new URL(searxngCookies.value);
+  searchHelper.initSearxngCookies(url);
+});
+
+const searxForm = searxDiv.getElementsByTagName('form')[0];
+const searxCookies = searxForm.getElementsByTagName('input')[0];
+searxForm.addEventListener('submit', async event => {
+  event.preventDefault();
+  const url = new URL(searxCookies.value);
+  searchHelper.initSearxCookies(url);
+});
 
 browser.storage.local.get(
   [
     "disableSearch",
     "searchFrontend",
     "searchProtocol",
-    "searxngCustomSettings"
   ],
   r => {
-    disableSearchElement.checked = !r.disableSearch;
-
-    searchFrontendElement.value = r.searchFrontend;
-    changeFrontendsSettings(r.searchFrontend);
-
-    protocolElement.value = r.searchProtocol;
-    changeProtocolSettings(r.searchProtocol);
+    disable.checked = !r.disableSearch;
+    frontend.value = r.searchFrontend;
+    protocol.value = r.searchProtocol;
 
-
-    searxngCustomSettings.checked = r.searxngCustomSettings
-    changeCustomSettings()
+    changeFrontendsSettings();
+    changeProtocolSettings();
   }
 );
 
-for (const element of inputChecked) {
-  let k = `searxng_${element.className}`
-  browser.storage.local.get(k, r => element.checked = r[k])
-}
-for (const element of inputValues) {
-  let k = `searxng_${element.className}`
-  browser.storage.local.get(k, r => element.value = r[k])
-}
-
-searxngCustomSettingsDiv.addEventListener("change", async () => {
-  for (const element of inputChecked)
-    browser.storage.local.set({ [`searxng_${element.className}`]: element.checked })
-
-  for (const element of inputValues)
-    browser.storage.local.set({ [`searxng_${element.className}`]: element.value });
-})
-
 document.addEventListener("change", async () => {
   await browser.storage.local.set({
-    disableSearch: !disableSearchElement.checked,
-    searchFrontend: searchFrontendElement.value,
-    searchProtocol: protocolElement.value,
-    searxngCustomSettings: searxngCustomSettings.checked,
+    disableSearch: !disable.checked,
+    searchFrontend: frontend.value,
+    searchProtocol: protocol.value,
   });
-  changeFrontendsSettings(searchFrontendElement.value);
-  changeProtocolSettings(protocolElement.value);
-  changeCustomSettings();
+  changeFrontendsSettings(frontend.value);
+  changeProtocolSettings(protocol.value);
 })
 
-function changeCustomSettings() {
-  if (searxngCustomSettings.checked)
-    for (const item of customSettingsDivElement) item.style.display = 'block';
-  else
-    for (const item of customSettingsDivElement) item.style.display = 'none';
-}
-
-function changeFrontendsSettings(frontend) {
+function changeFrontendsSettings() {
   let SearxWhoogleElement = document.getElementById("searx-whoogle");
-  if (frontend == 'searx') {
+  if (frontend.value == 'searx') {
     searxDiv.style.display = 'block';
     searxngDiv.style.display = 'none';
     whoogleDiv.style.display = 'none';
     SearxWhoogleElement.style.display = 'block';
   }
-  else if (frontend == 'searxng') {
+  else if (frontend.value == 'searxng') {
     searxDiv.style.display = 'none';
     searxngDiv.style.display = 'block';
     whoogleDiv.style.display = 'none';
     SearxWhoogleElement.style.display = 'block';
   }
-  else if (frontend == 'whoogle') {
+  else if (frontend.value == 'whoogle') {
     searxDiv.style.display = 'none';
     searxngDiv.style.display = 'none';
     whoogleDiv.style.display = 'block';
@@ -119,7 +73,7 @@ function changeFrontendsSettings(frontend) {
   }
 }
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
   let normalsearxDiv = searxDiv.getElementsByClassName("normal")[0];
   let torsearxDiv = searxDiv.getElementsByClassName("tor")[0];
   let i2psearxDiv = searxDiv.getElementsByClassName("i2p")[0];
@@ -132,35 +86,41 @@ function changeProtocolSettings(protocol) {
   let torwhoogleDiv = whoogleDiv.getElementsByClassName("tor")[0];
   let i2pwhoogleDiv = whoogleDiv.getElementsByClassName("i2p")[0];
 
-  if (protocol == 'normal') {
+  if (protocol.value == 'normal') {
     normalsearxDiv.style.display = 'block';
     normalsearxngDiv.style.display = 'block';
     normalwhoogleDiv.style.display = 'block';
+
     torsearxDiv.style.display = 'none';
     torsearxngDiv.style.display = 'none';
     torwhoogleDiv.style.display = 'none';
+
     i2psearxDiv.style.display = 'none';
     i2psearxngDiv.style.display = 'none';
     i2pwhoogleDiv.style.display = 'none';
   }
-  else if (protocol == 'tor') {
+  else if (protocol.value == 'tor') {
     normalsearxDiv.style.display = 'none';
     normalsearxngDiv.style.display = 'none';
     normalwhoogleDiv.style.display = 'none';
+
     torsearxDiv.style.display = 'block';
     torsearxngDiv.style.display = 'block';
     torwhoogleDiv.style.display = 'block';
+
     i2psearxDiv.style.display = 'none';
     i2psearxngDiv.style.display = 'none';
     i2pwhoogleDiv.style.display = 'none';
   }
-  else if (protocol == 'i2p') {
+  else if (protocol.value == 'i2p') {
     normalsearxDiv.style.display = 'none';
     normalsearxngDiv.style.display = 'none';
     normalwhoogleDiv.style.display = 'none';
+
     torsearxDiv.style.display = 'none';
     torsearxngDiv.style.display = 'none';
     torwhoogleDiv.style.display = 'none';
+
     i2psearxDiv.style.display = 'block';
     i2psearxngDiv.style.display = 'block';
     i2pwhoogleDiv.style.display = 'block';
@@ -232,9 +192,4 @@ latencyWhoogleElement.addEventListener("click",
       latencyWhoogleElement.removeEventListener("click", reloadWindow);
     });
   }
-);
-
-window.onblur = () => {
-  searchHelper.initSearxCookies();
-  searchHelper.initSearxngCookies();
-}
\ No newline at end of file
+);
\ No newline at end of file
diff --git a/src/pages/options/search/search.pug b/src/pages/options/search/search.pug
index 78825611..3bdc6d7e 100644
--- a/src/pages/options/search/search.pug
+++ b/src/pages/options/search/search.pug
@@ -46,340 +46,7 @@ body.option(dir="auto")
                 +instances('https://searx.i2p')
 
         #searxng
-            .some-block.option-block
-                h4(data-localise="__MSG_enableCustomSettings__") Enable Custom Settings (will use cookies)
-                input#enable-searxng-custom-settings(type="checkbox")
             hr
-            .custom-settings
-                .some-block.option-block
-                    h2 General
-
-                .some-block.option-block
-                    h4(data-localise="") Default categories
-
-                .checklist-popup
-                    div 
-                        div
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M221.09 64a157.09 157.09 0 10157.09 157.09A157.1 157.1 0 00221.09 64z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32")
-                                path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M338.29 338.29L448 448")
-                            |General
-                        input.category_general(type="checkbox")
-
-                    div 
-                        div
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                rect(x="48" y="80" width="416" height="352" rx="48" ry="48" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32")
-                                circle(cx="336" cy="176" r="32" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32")
-                                path(d="M304 335.79l-90.66-90.49a32 32 0 00-43.87-1.3L48 352M224 432l123.34-123.34a32 32 0 0143.11-2L464 368" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                            |Images
-
-                        input.category_images(type="checkbox")
-
-                    div 
-                        div
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M112 111v290c0 17.44 17 28.52 31 20.16l247.9-148.37c12.12-7.25 12.12-26.33 0-33.58L143 90.84c-14-8.36-31 2.72-31 20.16z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32")
-                            |Videos
-                        input.category_videos(type="checkbox")
-
-                    div 
-                        div 
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M368 415.86V72a24.07 24.07 0 00-24-24H72a24.07 24.07 0 00-24 24v352a40.12 40.12 0 0040 40h328" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32")
-                                path(d="M416 464h0a48 48 0 01-48-48V128h72a24 24 0 0124 24v264a48 48 0 01-48 48z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32")
-                                path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M240 128h64M240 192h64M112 256h192M112 320h192M112 384h192")
-                                path(d="M176 208h-64a16 16 0 01-16-16v-64a16 16 0 0116-16h64a16 16 0 0116 16v64a16 16 0 01-16 16z")
-                            |News
-                        input.category_news(type="checkbox")
-
-                    div 
-                        div 
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M256 48c-79.5 0-144 61.39-144 137 0 87 96 224.87 131.25 272.49a15.77 15.77 0 0025.5 0C304 409.89 400 272.07 400 185c0-75.61-64.5-137-144-137z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                                circle(cx="256" cy="192" r="48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                            |Maps
-                        input.category_map(type="checkbox")
-
-                    div 
-                        div 
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M192 218v-6c0-14.84 10-27 24.24-30.59l174.59-46.68A20 20 0 01416 154v22" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                                path(d="M416 295.94v80c0 13.91-8.93 25.59-22 30l-22 8c-25.9 8.72-52-10.42-52-38h0a33.37 33.37 0 0123-32l51-18.15c13.07-4.4 22-15.94 22-29.85V58a10 10 0 00-12.6-9.61L204 102a16.48 16.48 0 00-12 16v226c0 13.91-8.93 25.6-22 30l-52 18c-13.88 4.68-22 17.22-22 32h0c0 27.58 26.52 46.55 52 38l22-8c13.07-4.4 22-16.08 22-30v-80" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                            |Music
-                        input.category_music(type="checkbox")
-
-                    div 
-                        div 
-                            svg(class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M434.8 137.65l-149.36-68.1c-16.19-7.4-42.69-7.4-58.88 0L77.3 137.65c-17.6 8-17.6 21.09 0 29.09l148 67.5c16.89 7.7 44.69 7.7 61.58 0l148-67.5c17.52-8 17.52-21.1-.08-29.09zM160 308.52l-82.7 37.11c-17.6 8-17.6 21.1 0 29.1l148 67.5c16.89 7.69 44.69 7.69 61.58 0l148-67.5c17.6-8 17.6-21.1 0-29.1l-79.94-38.47" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                                path(d="M160 204.48l-82.8 37.16c-17.6 8-17.6 21.1 0 29.1l148 67.49c16.89 7.7 44.69 7.7 61.58 0l148-67.49c17.7-8 17.7-21.1.1-29.1L352 204.48" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                            |It
-                        input.category_it(type="checkbox")
-
-                    div 
-                        div 
-                            svg(class="ion-icon-big" viewBox="0 0 512 512" aria-hidden="true")
-                                path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M32 192L256 64l224 128-224 128L32 192z")
-                                path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M112 240v128l144 80 144-80V240M480 368V192M256 320v128")
-                            |Science
-                        input.category_science(type="checkbox")
-
-                    div 
-                        div
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M384 80H128c-26 0-43 14-48 40L48 272v112a48.14 48.14 0 0048 48h320a48.14 48.14 0 0048-48V272l-32-152c-5-27-23-40-48-40z" fill="none" stroke="currentColor" stroke-linejoin="round" stroke-width="32")
-                                path(fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M48 272h144M320 272h144M192 272a64 64 0 00128 0M144 144h224M128 208h256")
-                            |Files
-                        input.category_files(type="checkbox")
-
-                    div 
-                        div 
-                            svg(viewBox="0 0 512 512" aria-hidden="true")
-                                path(d="M402 168c-2.93 40.67-33.1 72-66 72s-63.12-31.32-66-72c-3-42.31 26.37-72 66-72s69 30.46 66 72z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                                path(d="M336 304c-65.17 0-127.84 32.37-143.54 95.41-2.08 8.34 3.15 16.59 11.72 16.59h263.65c8.57 0 13.77-8.25 11.72-16.59C463.85 335.36 401.18 304 336 304z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32")
-                                path(d="M200 185.94c-2.34 32.48-26.72 58.06-53 58.06s-50.7-25.57-53-58.06C91.61 152.15 115.34 128 147 128s55.39 24.77 53 57.94z" fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32")
-                                path(d="M206 306c-18.05-8.27-37.93-11.45-59-11.45-52 0-102.1 25.85-114.65 76.2-1.65 6.66 2.53 13.25 9.37 13.25H154" fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32")
-                            |Social Media
-                        input.category_social_media(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="") Search language
-                    select.language
-                        option(value="all") Default language
-                        option(value="af-ZA") 🇿🇦 Afrikaans (Suid-Afrika) 
-                        option(value="ca-ES") 🇪🇸 Català (Espanya) 
-                        option(value="da-DK") 🇩🇰 Dansk (Danmark) 
-                        option(value="de") 🌐 Deutsch 
-                        option(value="de-AT") 🇦🇹 Deutsch (Österreich) 
-                        option(value="de-CH") 🇨🇭 Deutsch (Schweiz) 
-                        option(value="de-DE") 🇩🇪 Deutsch (Deutschland) 
-                        option(value="et-EE") 🇪🇪 Eesti (Eesti) 
-                        option(value="en") 🌐 English 
-                        option(value="en-AU") 🇦🇺 English (Australia) 
-                        option(value="en-CA") 🇨🇦 English (Canada) 
-                        option(value="en-GB") 🇬🇧 English (United Kingdom) 
-                        option(value="en-IE") 🇮🇪 English (Ireland) 
-                        option(value="en-MY") 🇲🇾 English (Malaysia) 
-                        option(value="en-NZ") 🇳🇿 English (New Zealand) 
-                        option(value="en-US") 🇺🇸 English (United States) 
-                        option(value="es") 🌐 Español 
-                        option(value="es-AR") 🇦🇷 Español (Argentina) 
-                        option(value="es-CL") 🇨🇱 Español (Chile) 
-                        option(value="es-ES") 🇪🇸 Español (España) 
-                        option(value="es-MX") 🇲🇽 Español (México) 
-                        option(value="fil-PH") 🇵🇭 Filipino (Pilipinas) 
-                        option(value="fr") 🌐 Français 
-                        option(value="fr-BE") 🇧🇪 Français (Belgique) 
-                        option(value="fr-CA") 🇨🇦 Français (Canada) 
-                        option(value="fr-CH") 🇨🇭 Français (Suisse) 
-                        option(value="fr-FR") 🇫🇷 Français (France) 
-                        option(value="hr-HR") 🇭🇷 Hrvatski (Hrvatska) 
-                        option(value="id-ID") 🇮🇩 Indonesia (Indonesia) 
-                        option(value="it-IT") 🇮🇹 Italiano (Italia) 
-                        option(value="sw-TZ") 🇹🇿 Kiswahili (Tanzania) 
-                        option(value="lv-LV") 🇱🇻 Latviešu (Latvija) 
-                        option(value="lt-LT") 🇱🇹 Lietuvių (Lietuva) 
-                        option(value="hu-HU") 🇭🇺 Magyar (Magyarország) 
-                        option(value="nl") 🌐 Nederlands 
-                        option(value="nl-BE") 🇧🇪 Nederlands (België) 
-                        option(value="nl-NL") 🇳🇱 Nederlands (Nederland) 
-                        option(value="no-NO") 🇳🇴 Norsk 
-                        option(value="pl-PL") 🇵🇱 Polski (Polska) 
-                        option(value="pt") 🌐 Português 
-                        option(value="pt-BR") 🇧🇷 Português (Brasil) 
-                        option(value="pt-PT") 🇵🇹 Português (Portugal) 
-                        option(value="ro-RO") 🇷🇴 Română (România) 
-                        option(value="sk-SK") 🇸🇰 Slovenčina (Slovensko) 
-                        option(value="sl-SI") 🇸🇮 Slovenščina (Slovenija) 
-                        option(value="fi-FI") 🇫🇮 Suomi (Suomi) 
-                        option(value="sv-SE") 🇸🇪 Svenska (Sverige) 
-                        option(value="vi-VN") 🇻🇳 Tiếng Việt (Việt Nam) 
-                        option(value="tr-TR") 🇹🇷 Türkçe (Türkiye) 
-                        option(value="is-IS") 🇮🇸 Íslenska (Ísland) 
-                        option(value="cs-CZ") 🇨🇿 Čeština (Česko) 
-                        option(value="el-GR") 🇬🇷 Ελληνικά (Ελλάδα) 
-                        option(value="be-BY") 🇧🇾 Беларуская (Беларусь) 
-                        option(value="bg-BG") 🇧🇬 Български (България) 
-                        option(value="ru-RU") 🇷🇺 Русский (Россия) 
-                        option(value="sr-RS") 🇷🇸 Српски (Србија) 
-                        option(value="uk-UA") 🇺🇦 Українська (Україна) 
-                        option(value="he-IL") 🇮🇱 עברית (ישראל) 
-                        option(value="ar-EG") 🇪🇬 العربية (مصر) 
-                        option(value="fa-IR") 🇮🇷 فارسی (ایران) 
-                        option(value="hi-IN") 🇮🇳 हिन्दी (भारत) 
-                        option(value="th-TH") 🇹🇭 ไทย (ไทย) 
-                        option(value="zh") 🌐 中文 
-                        option(value="zh-CN") 🇨🇳 中文 (中国) 
-                        option(value="zh-HK") 🇭🇰 中文 (中國香港) 
-                        option(value="zh-TW") 🇹🇼 中文 (台灣) 
-                        option(value="ja-JP") 🇯🇵 日本語 (日本) 
-                        option(value="ko-KR") 🇰🇷 한국어 (대한민국) 
-
-                .some-block.option-block
-                    h4(data-localise="") Autocomplete
-                    select.autocomplete
-                        option(value="")  - 
-                        option(value="dbpedia") dbpedia
-                        option(value="duckduckgo") duckduckgo
-                        option(value="google") google
-                        option(value="seznam") seznam
-                        option(value="startpage") startpage
-                        option(value="swisscows") swisscows
-                        option(value="qwant") qwant
-                        option(value="wikipedia") wikipedia
-                        option(value="brave") brave
-
-                .some-block.option-block
-                    h4(data-localise="") SafeSearch
-                    select.safesearch
-                        option(value="2") Strict
-                        option(value="1") Moderate
-                        option(value="0") None
-
-                .some-block.option-block
-                    h4(data-localise="") Hostname replace
-                    input.hostname_replace(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="") Open Access DOI rewrite
-                    input.oa_doi_rewrite(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="") Open Access DOI resolver
-                    select.doi_resolver
-                        option(value="oadoi.org") oadoi.org - https://oadoi.org/
-                        option(value="doi.org") doi.org - https://doi.org/
-                        option(value="doai.io") doai.io - https://dissem.in/
-                        option(value="sci-hub.se") sci-hub.se - https://sci-hub.se/
-                        option(value="sci-hub.do") sci-hub.do - https://sci-hub.do/
-                        option(value="scihubtw.tw") scihubtw.tw - https://scihubtw.tw/
-                        option(value="sci-hub.st") sci-hub.st - https://sci-hub.st/
-                        option(value="sci-hub.bar") sci-hub.bar - https://sci-hub.bar/
-                        option(value="sci-hub.it.nf") sci-hub.it.nf - https://sci-hub.it.nf/
-
-                .some-block.option-block
-                    h4(data-localise="") Engine tokens
-                    input.tokens(type="text")
-
-                hr
-
-                .some-block.option-block
-                    h2 User Interface
-
-                .some-block.option-block
-                    h4(data-localise="") Interface language
-                    select.locale
-                        option(value="ar") العربية (Arabic)
-                        option(value="bg") Български (Bulgarian)
-                        option(value="bo") བོད་སྐད་ (Tibetan)
-                        option(value="ca") Català (Catalan)
-                        option(value="cs") Čeština (Czech)
-                        option(value="cy") Cymraeg (Welsh)
-                        option(value="da") Dansk (Danish)
-                        option(value="de") Deutsch (German)
-                        option(value="el-GR") Ελληνικά, Ελλάδα (Greek, Greece)
-                        option(value="en" selected="selected") English
-                        option(value="eo") Esperanto
-                        option(value="es") Español (Spanish)
-                        option(value="et") Eesti (Estonian)
-                        option(value="eu") Euskara (Basque)
-                        option(value="fa-IR") فارسی, ایران (Persian, Iran)
-                        option(value="fi") Suomi (Finnish)
-                        option(value="fil") Filipino
-                        option(value="fr") Français (French)
-                        option(value="gl") Galego (Galician)
-                        option(value="he") עברית (Hebrew)
-                        option(value="hr") Hrvatski (Croatian)
-                        option(value="hu") Magyar (Hungarian)
-                        option(value="ia") Interlingua
-                        option(value="id") Indonesia (Indonesian)
-                        option(value="it") Italiano (Italian)
-                        option(value="ja") 日本語 (Japanese)
-                        option(value="ko") 한국어 (Korean)
-                        option(value="lt") Lietuvių (Lithuanian)
-                        option(value="nb-NO") Norsk bokmål, Norge (Norwegian bokmål, Norway)
-                        option(value="nl") Nederlands (Dutch)
-                        option(value="nl-BE") Vlaams (Dutch, Belgium)
-                        option(value="oc") Occitan
-                        option(value="pl") Polski (Polish)
-                        option(value="pt") Português (Portuguese)
-                        option(value="pt-BR") Português, Brasil (Portuguese, Brazil)
-                        option(value="ro") Română (Romanian)
-                        option(value="ru") Русский (Russian)
-                        option(value="sk") Slovenčina (Slovak)
-                        option(value="sl") Slovenščina (Slovenian)
-                        option(value="sr") Српски (Serbian)
-                        option(value="sv") Svenska (Swedish)
-                        option(value="ta") தமிழ் (Tamil)
-                        option(value="te") తెలుగు (Telugu)
-                        option(value="tr") Türkçe (Turkish)
-                        option(value="uk") Українська (Ukrainian)
-                        option(value="vi") Tiếng việt (Vietnamese)
-                        option(value="zh-Hans-CN") 中文, 中国 (Chinese, China)
-                        option(value="zh-Hant-TW") 中文, 台灣 (Chinese, Taiwan)
-
-                .some-block.option-block
-                    h4(data-localise="") Theme
-                    select.theme
-                        option(value="simple") simple
-
-                .some-block.option-block
-                    h4(data-localise="") Theme style
-                    select.simple_style
-                        option(value="auto") auto
-                        option(value="light") light
-                        option(value="dark") dark
-
-                .some-block.option-block
-                    h4(data-localise="") Results on new tabs
-                    select.results_on_new_tab
-                        option(value="1") On
-                        option(value="0") Off
-
-                .some-block.option-block
-                    h4(data-localise="") Infinite scroll
-                    select.infinite_scroll
-                        option(value="1") On
-                        option(value="0") Off
-
-                .some-block.option-block
-                    h4(data-localise="") Search on category select
-                    input.search_on_category_select(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="") Vim-like hotkeys
-                    input.vim_hotkeys(type="checkbox")
-
-                hr
-
-                .some-block.option-block
-                    h2 Privacy 
-
-                .some-block.option-block
-                    h4(data-localise="") HTTP Method
-                    select.method
-                        option(value="POST") POST
-                        option(value="GET") GET
-
-                .some-block.option-block
-                    h4(data-localise="") Image proxy
-                    select.image_proxy
-                        option(value="1") Enabled
-                        option(value="0") Disabled
-
-                .some-block.option-block
-                    h4(data-localise="") Query in the page's title
-                    select.query_in_title
-                        option(value="1") Enabled
-                        option(value="") Disabled
-
-                .some-block.option-block
-                    h4(data-localise="") Tracker URL remover
-                    input.tracker_url_remover(type="checkbox")
-
-                hr
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://searxng.com')
diff --git a/src/pages/options/sendTargets/sendTargets.html b/src/pages/options/sendTargets/sendTargets.html
index 873a35ef..7a684175 100644
--- a/src/pages/options/sendTargets/sendTargets.html
+++ b/src/pages/options/sendTargets/sendTargets.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a class="selected" href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a class="selected" href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/sendTargets/sendTargets.js b/src/pages/options/sendTargets/sendTargets.js
index 236d6799..057ae864 100644
--- a/src/pages/options/sendTargets/sendTargets.js
+++ b/src/pages/options/sendTargets/sendTargets.js
@@ -1,8 +1,8 @@
 import sendTargetsHelper from "../../../assets/javascripts/helpers/sendTargets.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableSendTargetsElement = document.getElementById("disable-sendTargets");
-let protocolElement = document.getElementById("protocol")
+let disable = document.getElementById("disable-sendTargets");
+let protocol = document.getElementById("protocol")
 
 browser.storage.local.get(
     [
@@ -10,29 +10,28 @@ browser.storage.local.get(
         "sendTargetsProtocol",
     ],
     r => {
-        disableSendTargetsElement.checked = !r.disableSendTarget;
-
-        protocolElement.value = r.sendTargetsProtocol;
-        changeProtocolSettings(r.sendTargetsProtocol);
+        disable.checked = !r.disableSendTarget;
+        protocol.value = r.sendTargetsProtocol;
+        changeProtocolSettings();
     }
 )
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disableSendTarget: !disableSendTargetsElement.checked,
-        sendTargetsProtocol: protocolElement.value,
+        disableSendTarget: !disable.checked,
+        sendTargetsProtocol: protocol.value,
     })
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
 })
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalDiv = document.getElementsByClassName("normal")[0];
     let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
diff --git a/src/pages/options/tiktok/tiktok.html b/src/pages/options/tiktok/tiktok.html
index 5f969d82..9b5932fc 100644
--- a/src/pages/options/tiktok/tiktok.html
+++ b/src/pages/options/tiktok/tiktok.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -66,34 +66,8 @@
         <option value="tor" data-localise="__MSG_tor__">Tor</option>
       </select>
     </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enableCustomSettings__">Enable Custom Settings (will use cookies)</h4>
-      <input id="enable-custom-settings" type="checkbox">
-    </div>
     <div id="proxiTok">
       <hr>
-      <div class="custom-settings">
-        <div class="some-block option-block">
-          <h2>General</h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_theme__">Theme</h4>
-          <select class="theme">
-            <option value="default">Default</option>
-            <option value="card">Card</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h2>Api</h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_legacyMode__">Legacy mode</h4>
-          <select class="api-legacy">
-            <option value="on">On</option>
-            <option value="off">Off</option>
-          </select>
-        </div>
-      </div>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/tiktok/tiktok.js b/src/pages/options/tiktok/tiktok.js
index 56cf93dc..8055fc95 100644
--- a/src/pages/options/tiktok/tiktok.js
+++ b/src/pages/options/tiktok/tiktok.js
@@ -4,24 +4,12 @@ import commonHelper from "../../../assets/javascripts/helpers/common.js";
 let disable = document.getElementById("disable-tiktok");
 let protocol = document.getElementById("protocol")
 
-let enableCustomSettings = document.getElementById("enable-custom-settings");
-let customSettingsDiv = document.getElementsByClassName("custom-settings");
-
-let theme = document.getElementById('proxiTok').getElementsByClassName('theme')[0];
-let api_legacy = document.getElementById('proxiTok').getElementsByClassName('api-legacy')[0];
-
-document.addEventListener("change", async () => {
-    await browser.storage.local.set({
+document.addEventListener("change", () => {
+    browser.storage.local.set({
         disableTiktok: !disable.checked,
         tiktokProtocol: protocol.value,
-
-        enableTiktokCustomSettings: enableCustomSettings.checked,
-
-        proxiTokTheme: theme.value,
-        proxiTokApiLegacy: api_legacy.value,
-
     });
-    changeProtocolSettings(protocol.value);
+    changeProtocolSettings();
 })
 
 window.onblur = tiktokHelper.initProxiTokCookies;
@@ -30,16 +18,11 @@ browser.storage.local.get(
     [
         "disableTiktok",
         "tiktokProtocol",
-
-        "enableTiktokCustomSettings",
-
-        "proxiTokTheme",
-        "proxiTokApiLegacy",
     ],
     r => {
         disable.checked = !r.disableTiktok;
         protocol.value = r.tiktokProtocol;
-        changeProtocolSettings(r.tiktokProtocol);
+        changeProtocolSettings();
         let normalDiv = document.getElementsByClassName("normal")[0];
         let torDiv = document.getElementsByClassName("tor")[0];
         if (r.tiktokProtocol == 'normal') {
@@ -50,33 +33,20 @@ browser.storage.local.get(
             normalDiv.style.display = 'none';
             torDiv.style.display = 'block';
         }
-
-        enableCustomSettings.checked = r.enableTiktokCustomSettings;
-        if (r.enableTiktokCustomSettings)
-            customSettingsDiv.style.display = 'block';
-        else
-            customSettingsDiv.style.display = 'none';
-
-        theme.value = r.proxiTokTheme;
-        api_legacy.value = r.proxiTokApiLegacy;
     }
 )
 
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalDiv = document.getElementsByClassName("normal")[0];
     let torDiv = document.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
-    if (enableCustomSettings.checked)
-        for (const item of customSettingsDiv) item.style.display = 'block';
-    else
-        for (const item of customSettingsDiv) item.style.display = 'none';
 }
 
 commonHelper.processDefaultCustomInstances('tiktok', 'proxiTok', 'normal', document);
diff --git a/src/pages/options/tiktok/tiktok.pug b/src/pages/options/tiktok/tiktok.pug
index 31ae18df..528f6ae2 100644
--- a/src/pages/options/tiktok/tiktok.pug
+++ b/src/pages/options/tiktok/tiktok.pug
@@ -17,30 +17,9 @@ body.option(dir="auto")
             select#protocol
                 option(value="normal" data-localise="__MSG_normal__") Normal
                 option(value="tor" data-localise="__MSG_tor__") Tor
-
-        .some-block.option-block
-                h4(data-localise="__MSG_enableCustomSettings__") Enable Custom Settings (will use cookies)
-                input#enable-custom-settings(type="checkbox")
         
         #proxiTok
             hr
-            .custom-settings
-                .some-block.option-block
-                    h2 General
-                .some-block.option-block
-                    h4(data-localise="__MSG_theme__") Theme
-                    select.theme
-                        option(value="default") Default
-                        option(value="card") Card
-
-                .some-block.option-block
-                    h2 Api
-                .some-block.option-block
-                    h4(data-localise="__MSG_legacyMode__") Legacy mode
-                    select.api-legacy
-                        option(value="on") On
-                        option(value="off") Off
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://proxitok.com')
diff --git a/src/pages/options/translate/translate.html b/src/pages/options/translate/translate.html
index 1d4db028..249ce0b1 100644
--- a/src/pages/options/translate/translate.html
+++ b/src/pages/options/translate/translate.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a class="selected" href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a class="selected" href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -75,243 +75,6 @@
     </div>
     <hr>
     <div id="simplyTranslate">
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_from__">From</h4>
-        <select class="from">
-          <option value="auto">Auto</option>
-          <option value="af">Afrikaans</option>
-          <option value="sq">Albanian</option>
-          <option value="am">Amharic</option>
-          <option value="ar">Arabic</option>
-          <option value="hy">Armenian</option>
-          <option value="az">Azerbaijani</option>
-          <option value="eu">Basque</option>
-          <option value="be">Belarusian</option>
-          <option value="bn">Bengali</option>
-          <option value="bs">Bosnian</option>
-          <option value="bg">Bulgarian</option>
-          <option value="ca">Catalan</option>
-          <option value="ceb">Cebuano</option>
-          <option value="ny">Chichewa</option>
-          <option value="zh-CN">Chinese</option>
-          <option value="co">Corsican</option>
-          <option value="hr">Croatian</option>
-          <option value="cs">Czech</option>
-          <option value="da">Danish</option>
-          <option value="nl">Dutch</option>
-          <option value="en">English</option>
-          <option value="eo">Esperanto</option>
-          <option value="et">Estonian</option>
-          <option value="tl">Filipino</option>
-          <option value="fi">Finnish</option>
-          <option value="fr">French</option>
-          <option value="fy">Frisian</option>
-          <option value="gl">Galician</option>
-          <option value="ka">Georgian</option>
-          <option value="de">German</option>
-          <option value="el">Greek</option>
-          <option value="gu">Gujarati</option>
-          <option value="ht">Haitian Creole</option>
-          <option value="ha">Hausa</option>
-          <option value="haw">Hawaiian</option>
-          <option value="iw">Hebrew</option>
-          <option value="hi">Hindi</option>
-          <option value="hmn">Hmong</option>
-          <option value="hu">Hungarian</option>
-          <option value="is">Icelandic</option>
-          <option value="ig">Igbo</option>
-          <option value="id">Indonesian</option>
-          <option value="ga">Irish</option>
-          <option value="it">Italian</option>
-          <option value="ja">Japanese</option>
-          <option value="jw">Javanese</option>
-          <option value="kn">Kannada</option>
-          <option value="kk">Kazakh</option>
-          <option value="km">Khmer</option>
-          <option value="rw">Kinyarwanda</option>
-          <option value="ko">Korean</option>
-          <option value="ku">Kurdish (Kurmanji)</option>
-          <option value="ky">Kyrgyz</option>
-          <option value="lo">Lao</option>
-          <option value="la">Latin</option>
-          <option value="lv">Latvian</option>
-          <option value="lt">Lithuanian</option>
-          <option value="lb">Luxembourgish</option>
-          <option value="mk">Macedonian</option>
-          <option value="mg">Malagasy</option>
-          <option value="ms">Malay</option>
-          <option value="ml">Malayalam</option>
-          <option value="mt">Maltese</option>
-          <option value="mi">Maori</option>
-          <option value="mr">Marathi</option>
-          <option value="mn">Mongolian</option>
-          <option value="my">Myanmar (Burmese)</option>
-          <option value="ne">Nepali</option>
-          <option value="no">Norwegian</option>
-          <option value="or">Odia (Oriya)</option>
-          <option value="ps">Pashto</option>
-          <option value="fa">Persian</option>
-          <option value="pl">Polish</option>
-          <option value="pt">Portuguese</option>
-          <option value="pa">Punjabi</option>
-          <option value="ro">Romanian</option>
-          <option value="ru">Russian</option>
-          <option value="sm">Samoan</option>
-          <option value="gd">Scots Gaelic</option>
-          <option value="sr">Serbian</option>
-          <option value="st">Sesotho</option>
-          <option value="sn">Shona</option>
-          <option value="sd">Sindhi</option>
-          <option value="si">Sinhala</option>
-          <option value="sk">Slovak</option>
-          <option value="sl">Slovenian</option>
-          <option value="so">Somali</option>
-          <option value="es">Spanish</option>
-          <option value="su">Sundanese</option>
-          <option value="sw">Swahili</option>
-          <option value="sv">Swedish</option>
-          <option value="tg">Tajik</option>
-          <option value="ta">Tamil</option>
-          <option value="tt">Tatar</option>
-          <option value="te">Telugu</option>
-          <option value="th">Thai</option>
-          <option value="tr">Turkish</option>
-          <option value="tk">Turkmen</option>
-          <option value="uk">Ukrainian</option>
-          <option value="ur">Urdu</option>
-          <option value="ug">Uyghur</option>
-          <option value="uz">Uzbek</option>
-          <option value="vi">Vietnamese</option>
-          <option value="cy">Welsh</option>
-          <option value="xh">Xhosa</option>
-          <option value="yi">Yiddish</option>
-          <option value="yo">Yoruba</option>
-          <option value="zu">Zulu</option>
-        </select>
-      </div>
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_to__">To</h4>
-        <select class="to">
-          <option value="af">Afrikaans</option>
-          <option value="sq">Albanian</option>
-          <option value="am">Amharic</option>
-          <option value="ar">Arabic</option>
-          <option value="hy">Armenian</option>
-          <option value="az">Azerbaijani</option>
-          <option value="eu">Basque</option>
-          <option value="be">Belarusian</option>
-          <option value="bn">Bengali</option>
-          <option value="bs">Bosnian</option>
-          <option value="bg">Bulgarian</option>
-          <option value="ca">Catalan</option>
-          <option value="ceb">Cebuano</option>
-          <option value="ny">Chichewa</option>
-          <option value="zh-CN">Chinese</option>
-          <option value="co">Corsican</option>
-          <option value="hr">Croatian</option>
-          <option value="cs">Czech</option>
-          <option value="da">Danish</option>
-          <option value="nl">Dutch</option>
-          <option value="en">English</option>
-          <option value="eo">Esperanto</option>
-          <option value="et">Estonian</option>
-          <option value="tl">Filipino</option>
-          <option value="fi">Finnish</option>
-          <option value="fr">French</option>
-          <option value="fy">Frisian</option>
-          <option value="gl">Galician</option>
-          <option value="ka">Georgian</option>
-          <option value="de">German</option>
-          <option value="el">Greek</option>
-          <option value="gu">Gujarati</option>
-          <option value="ht">Haitian Creole</option>
-          <option value="ha">Hausa</option>
-          <option value="haw">Hawaiian</option>
-          <option value="iw">Hebrew</option>
-          <option value="hi">Hindi</option>
-          <option value="hmn">Hmong</option>
-          <option value="hu">Hungarian</option>
-          <option value="is">Icelandic</option>
-          <option value="ig">Igbo</option>
-          <option value="id">Indonesian</option>
-          <option value="ga">Irish</option>
-          <option value="it">Italian</option>
-          <option value="ja">Japanese</option>
-          <option value="jw">Javanese</option>
-          <option value="kn">Kannada</option>
-          <option value="kk">Kazakh</option>
-          <option value="km">Khmer</option>
-          <option value="rw">Kinyarwanda</option>
-          <option value="ko">Korean</option>
-          <option value="ku">Kurdish (Kurmanji)</option>
-          <option value="ky">Kyrgyz</option>
-          <option value="lo">Lao</option>
-          <option value="la">Latin</option>
-          <option value="lv">Latvian</option>
-          <option value="lt">Lithuanian</option>
-          <option value="lb">Luxembourgish</option>
-          <option value="mk">Macedonian</option>
-          <option value="mg">Malagasy</option>
-          <option value="ms">Malay</option>
-          <option value="ml">Malayalam</option>
-          <option value="mt">Maltese</option>
-          <option value="mi">Maori</option>
-          <option value="mr">Marathi</option>
-          <option value="mn">Mongolian</option>
-          <option value="my">Myanmar (Burmese)</option>
-          <option value="ne">Nepali</option>
-          <option value="no">Norwegian</option>
-          <option value="or">Odia (Oriya)</option>
-          <option value="ps">Pashto</option>
-          <option value="fa">Persian</option>
-          <option value="pl">Polish</option>
-          <option value="pt">Portuguese</option>
-          <option value="pa">Punjabi</option>
-          <option value="ro">Romanian</option>
-          <option value="ru">Russian</option>
-          <option value="sm">Samoan</option>
-          <option value="gd">Scots Gaelic</option>
-          <option value="sr">Serbian</option>
-          <option value="st">Sesotho</option>
-          <option value="sn">Shona</option>
-          <option value="sd">Sindhi</option>
-          <option value="si">Sinhala</option>
-          <option value="sk">Slovak</option>
-          <option value="sl">Slovenian</option>
-          <option value="so">Somali</option>
-          <option value="es">Spanish</option>
-          <option value="su">Sundanese</option>
-          <option value="sw">Swahili</option>
-          <option value="sv">Swedish</option>
-          <option value="tg">Tajik</option>
-          <option value="ta">Tamil</option>
-          <option value="tt">Tatar</option>
-          <option value="te">Telugu</option>
-          <option value="th">Thai</option>
-          <option value="tr">Turkish</option>
-          <option value="tk">Turkmen</option>
-          <option value="uk">Ukrainian</option>
-          <option value="ur">Urdu</option>
-          <option value="ug">Uyghur</option>
-          <option value="uz">Uzbek</option>
-          <option value="vi">Vietnamese</option>
-          <option value="cy">Welsh</option>
-          <option value="xh">Xhosa</option>
-          <option value="yi">Yiddish</option>
-          <option value="yo">Yoruba</option>
-          <option value="zu">Zulu</option>
-        </select>
-      </div>
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_engine__">Engine</h4>
-        <select class="engine">
-          <option value="google">Google</option>
-          <option value="libre">Libre</option>
-          <option value="deepl">Deepl</option>
-          <option value="iciba">ICIBA</option>
-          <option value="reverso">Reverso</option>
-        </select>
-      </div>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
@@ -362,7 +125,7 @@
                 <div class="checklist custom-checklist"></div>
       </div>
     </div>
-    <div id="lingva"> 
+    <div id="lingva">
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/translate/translate.js b/src/pages/options/translate/translate.js
index 3338f8ce..55a2d74f 100644
--- a/src/pages/options/translate/translate.js
+++ b/src/pages/options/translate/translate.js
@@ -1,51 +1,38 @@
 import translateHelper from "../../../assets/javascripts/helpers/translate/translate.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableElement = document.getElementById("disable-simplyTranslate");
-let simplyTranslateDivElement = document.getElementById("simplyTranslate");
-let lingvaDivElement = document.getElementById("lingva");
-let translateFrontendElement = document.getElementById("translate-frontend");
-let protocolElement = document.getElementById("protocol");
+let disable = document.getElementById("disable-simplyTranslate");
+let simplyTranslateDiv = document.getElementById("simplyTranslate");
+let lingvaDiv = document.getElementById("lingva");
+let frontend = document.getElementById("translate-frontend");
+let protocol = document.getElementById("protocol");
 
-function changeFrontendsSettings(frontend) {
-    if (frontend == 'simplyTranslate') {
-        simplyTranslateDivElement.style.display = 'block';
-        lingvaDivElement.style.display = 'none';
+
+function changeFrontendsSettings() {
+    if (frontend.value == 'simplyTranslate') {
+        simplyTranslateDiv.style.display = 'block';
+        lingvaDiv.style.display = 'none';
     }
-    else if (frontend == 'lingva') {
-        simplyTranslateDivElement.style.display = 'none';
-        lingvaDivElement.style.display = 'block';
+    else if (frontend.value == 'lingva') {
+        simplyTranslateDiv.style.display = 'none';
+        lingvaDiv.style.display = 'block';
     }
 }
 
-document.addEventListener("change", async () => {
-    await browser.storage.local.set({
-        translateDisable: !disableElement.checked,
-        translateFrontend: translateFrontendElement.value,
-        translateProtocol: protocolElement.value,
-        translateFrom: fromElement.value,
-        translateTo: toElement.value,
-        simplyTranslateEngine: simplyTranslateEngineElement.value,
-    })
-    changeProtocolSettings(protocolElement.value);
-    changeFrontendsSettings(translateFrontendElement.value);
-})
-
-
-function changeProtocolSettings(protocol) {
+function changeProtocolSettings() {
     let normalSimplyTranslateDiv = document.getElementById("simplyTranslate").getElementsByClassName("normal")[0];
     let torSimplyTranslateDiv = document.getElementById("simplyTranslate").getElementsByClassName("tor")[0];
 
     let normalLingvaDiv = document.getElementById("lingva").getElementsByClassName("normal")[0];
     let torLingvaDiv = document.getElementById("lingva").getElementsByClassName("tor")[0];
 
-    if (protocol == 'normal') {
+    if (protocol.value == 'normal') {
         normalSimplyTranslateDiv.style.display = 'block';
         normalLingvaDiv.style.display = 'block';
         torLingvaDiv.style.display = 'none';
         torSimplyTranslateDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalSimplyTranslateDiv.style.display = 'none';
         normalLingvaDiv.style.display = 'none';
         torLingvaDiv.style.display = 'block';
@@ -53,35 +40,32 @@ function changeProtocolSettings(protocol) {
     }
 }
 
-let fromElement = document.getElementsByClassName("from")[0];
-let toElement = document.getElementsByClassName("to")[0];
-let simplyTranslateElement = document.getElementById("simplyTranslate")
-let simplyTranslateEngineElement = simplyTranslateElement.getElementsByClassName("engine")[0];
-
 browser.storage.local.get(
     [
         "translateDisable",
         "translateFrontend",
         "translateProtocol",
-        "translateFrom",
-        "translateTo",
-        "simplyTranslateEngine",
     ],
     r => {
-        disableElement.checked = !r.translateDisable;
-
-        translateFrontendElement.value = r.translateFrontend;
-        changeFrontendsSettings(r.translateFrontend);
-
-        protocolElement.value = r.translateProtocol;
-        changeProtocolSettings(r.translateProtocol);
-
-        fromElement.value = r.translateFrom;
-        toElement.value = r.translateTo;
-        simplyTranslateEngineElement.value = r.simplyTranslateEngine;
+        disable.checked = !r.translateDisable;
+        frontend.value = r.translateFrontend;
+        protocol.value = r.translateProtocol;
+        changeFrontendsSettings();
+        changeProtocolSettings();
     }
 );
 
+document.addEventListener("change", () => {
+    browser.storage.local.set({
+        translateDisable: !disable.checked,
+        translateFrontend: frontend.value,
+        translateProtocol: protocol.value,
+    })
+    changeProtocolSettings();
+    changeFrontendsSettings();
+})
+
+
 commonHelper.processDefaultCustomInstances('translate', 'simplyTranslate', 'normal', document)
 commonHelper.processDefaultCustomInstances('translate', 'simplyTranslate', 'tor', document);
 commonHelper.processDefaultCustomInstances('translate', 'lingva', 'normal', document);
diff --git a/src/pages/options/translate/translate.pug b/src/pages/options/translate/translate.pug
index f6a192c4..42afcdf1 100644
--- a/src/pages/options/translate/translate.pug
+++ b/src/pages/options/translate/translate.pug
@@ -25,28 +25,7 @@ body.option(dir="auto")
                 option(value="tor" data-localise="__MSG_tor__") Tor
 
         hr
-
         #simplyTranslate
-            .some-block.option-block
-                h4(data-localise="__MSG_from__") From
-                select.from
-                    option(value="auto") Auto
-                    include ../../widgets/from-to.pug
-
-            .some-block.option-block
-                h4(data-localise="__MSG_to__") To
-                select.to
-                    include ../../widgets/from-to.pug
-
-            .some-block.option-block
-                h4(data-localise="__MSG_engine__") Engine
-                select.engine
-                    option(value="google") Google
-                    option(value="libre") Libre
-                    option(value="deepl") Deepl
-                    option(value="iciba") ICIBA
-                    option(value="reverso") Reverso
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://simplytranslate.org')
@@ -55,9 +34,7 @@ body.option(dir="auto")
             .tor
                 include ../../widgets/instances.pug
                 +instances('http://hxecvvetgrznmprg.onion')
-
-        #lingva 
-
+        #lingva
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://lingvatranslate.com')
diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html
index 204e729d..2bd204aa 100644
--- a/src/pages/options/twitter/twitter.html
+++ b/src/pages/options/twitter/twitter.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -64,92 +64,10 @@
       <select id="protocol">
         <option value="normal" data-localise="__MSG_normal__">Normal</option>
         <option value="tor" data-localise="__MSG_tor__">Tor</option>
-        <option value="i2p" data-localise="__MSG_i2p__">I2P</option>
       </select>
     </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_bypassTwitter__">Bypass "Open in Twitter"</h4>
-      <input id="bypass-watch-on-twitter" type="checkbox">
-    </div>
-    <div class="some-block option-block">
-      <h4 data-localise="__MSG_enableCustomNitter__">Enable Custom Settings (will use cookies)</h4>
-      <input id="enable-twitter-custom-settings" type="checkbox">
-    </div>
-    <div id="nitter"> 
-      <div class="custom-settings">
-        <div class="some-block option-block">
-          <h2>Display </h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_theme__">Theme</h4>
-          <select class="theme">
-            <option value="Auto">Auto</option>
-            <option value="Auto (Twitter)">Auto (Twitter)</option>
-            <option value="Black">Black</option>
-            <option value="Mastodon">Mastodon</option>
-            <option value="Nitter">Nitter</option>
-            <option value="Pleroma">Pleroma</option>
-            <option value="Twitter">Twitter</option>
-            <option value="Twitter Dark">Twitter Dark</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_infiniteScroll__">Infinite scrolling (experimental, requires JavaScript)</h4>
-          <input class="infiniteScroll" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_stickyProfile__">Make profile sidebar stick to top</h4>
-          <input class="stickyProfile" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_bidiSupport__">Support bidirectional text (makes clicking on tweets harder)</h4>
-          <input class="bidiSupport" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_hideTweetStats__">Hide tweet stats (replies, retweets, likes)</h4>
-          <input class="hideTweetStats" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_hideBanner__">Hide profile banner</h4>
-          <input class="hideBanner" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_hidePins__">Hide pinned tweets</h4>
-          <input class="hidePins" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_hideReplies__">Hide tweet replies</h4>
-          <input class="hideReplies" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_squareAvatars__">Square profile pictures</h4>
-          <input class="squareAvatars" type="checkbox">
-        </div>
-        <hr>
-        <div class="some-block option-block">
-          <h2>Media</h2>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_mp4Playback__">Enable mp4 video playback (only for gifs)</h4>
-          <input class="mp4Playback" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_hlsPlayback__">Enable hls video streaming (requires JavaScript)</h4>
-          <input class="hlsPlayback" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_proxyVideos__">Proxy video streaming through the server (might be slow)</h4>
-          <input class="proxyVideos" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_muteVideos__">Mute videos by default</h4>
-          <input class="muteVideos" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoplayGifs__">Autoplay gifs</h4>
-          <input class="autoplayGifs" type="checkbox">
-        </div>
-      </div>
+    <div id="nitter">
+      <hr>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/twitter/twitter.js
index 2fcf63c5..c23007f9 100644
--- a/src/pages/options/twitter/twitter.js
+++ b/src/pages/options/twitter/twitter.js
@@ -1,124 +1,54 @@
 import twitterHelper from "../../../assets/javascripts/helpers/twitter.js";
 import commonHelper from "../../../assets/javascripts/helpers/common.js";
 
-let disableTwitterElement = document.getElementById("disable-nitter");
-let customSettingsDivElement = document.getElementsByClassName("custom-settings");
-let protocolElement = document.getElementById("protocol");
-let enableYoutubeCustomSettingsElement = document.getElementById("enable-twitter-custom-settings");
-let bypassWatchOnTwitterElement = document.getElementById("bypass-watch-on-twitter");
+let disable = document.getElementById("disable-nitter");
+let protocol = document.getElementById("protocol");
 
-let theme = document.getElementById('nitter').getElementsByClassName("theme")[0];
-let infiniteScroll = document.getElementById('nitter').getElementsByClassName("infiniteScroll")[0];
-let stickyProfile = document.getElementById('nitter').getElementsByClassName('stickyProfile')[0];
-let bidiSupport = document.getElementById('nitter').getElementsByClassName('bidiSupport')[0];
-let hideTweetStats = document.getElementById('nitter').getElementsByClassName('hideTweetStats')[0];
-let hideBanner = document.getElementById('nitter').getElementsByClassName('hideBanner')[0];
-let hidePins = document.getElementById('nitter').getElementsByClassName('hidePins')[0];
-let hideReplies = document.getElementById('nitter').getElementsByClassName('hideReplies')[0];
-let squareAvatars = document.getElementById('nitter').getElementsByClassName('squareAvatars')[0];
-let mp4Playback = document.getElementById('nitter').getElementsByClassName('mp4Playback')[0];
-let hlsPlayback = document.getElementById('nitter').getElementsByClassName('hlsPlayback')[0];
-let proxyVideos = document.getElementById('nitter').getElementsByClassName('proxyVideos')[0];
-let muteVideos = document.getElementById('nitter').getElementsByClassName('muteVideos')[0];
-let autoplayGifs = document.getElementById('nitter').getElementsByClassName('autoplayGifs')[0];
-let nitterElement = document.getElementById("nitter");
+let nitterDiv = document.getElementById('nitter');
+
+const nitterForm = nitterDiv.getElementsByTagName('form')[0];
+const nitterCookies = nitterForm.getElementsByTagName('input')[0];
+nitterForm.addEventListener('submit', event => {
+  event.preventDefault();
+  const url = new URL(nitterCookies.value);
+  twitterHelper.initNitterCookies(url);
+});
 
 browser.storage.local.get(
     [
         "disableTwitter",
         "twitterProtocol",
-        "enableTwitterCustomSettings",
-        "bypassWatchOnTwitter",
-        "nitterTheme",
-        "nitterInfiniteScroll",
-        "nitterStickyProfile",
-        "nitterBidiSupport",
-        "nitterHideTweetStats",
-        "nitterHideBanner",
-        "nitterHidePins",
-        "nitterHideReplies",
-        "nitterSquareAvatars",
-        "nitterMp4Playback",
-        "nitterHlsPlayback",
-        "nitterProxyVideos",
-        "nitterMuteVideos",
-        "nitterAutoplayGifs",
     ],
     r => {
-        disableTwitterElement.checked = !r.disableTwitter;
-        enableYoutubeCustomSettingsElement.checked = r.enableTwitterCustomSettings;
-        bypassWatchOnTwitterElement.checked = r.bypassWatchOnTwitter;
-        protocolElement.value = r.twitterProtocol;
-        changeProtocolSettings(r.twitterProtocol);
-
-        // Display
-        theme.value = r.nitterTheme;
-        infiniteScroll.checked = r.nitterInfiniteScroll;
-        stickyProfile.checked = r.nitterStickyProfile;
-        bidiSupport.checked = r.nitterBidiSupport;
-        hideTweetStats.checked = r.nitterHideTweetStats;
-        hideBanner.checked = r.nitterHideBanner;
-        hidePins.checked = r.nitterHidePins;
-        hideReplies.checked = r.nitterHideReplies;
-        squareAvatars.checked = r.nitterSquareAvatars;
-
-        // Media
-        mp4Playback.checked = r.nitterMp4Playback;
-        hlsPlayback.checked = r.nitterHlsPlayback;
-        proxyVideos.checked = r.nitterProxyVideos;
-        muteVideos.checked = r.nitterMuteVideos;
-        autoplayGifs.checked = r.nitterAutoplayGifs;
+        disable.checked = !r.disableTwitter;
+        protocol.value = r.twitterProtocol;
+        changeProtocolSettings();
     }
 )
 
-document.addEventListener("change", async () => {
-    await browser.storage.local.set({
-        disableTwitter: !disableTwitterElement.checked,
-        twitterProtocol: protocolElement.value,
-        enableTwitterCustomSettings: enableYoutubeCustomSettingsElement.checked,
-        bypassWatchOnTwitter: bypassWatchOnTwitterElement.checked,
-
-        // Display
-        nitterTheme: theme.value,
-        nitterInfiniteScroll: infiniteScroll.checked,
-        nitterStickyProfile: stickyProfile.checked,
-        nitterBidiSupport: bidiSupport.checked,
-        nitterHideTweetStats: hideTweetStats.checked,
-        nitterHideBanner: hideBanner.checked,
-        nitterHidePins: hidePins.checked,
-        nitterHideReplies: hideReplies.checked,
-        nitterSquareAvatars: squareAvatars.checked,
-
-        // Media
-        nitterMp4Playback: mp4Playback.checked,
-        nitterHlsPlayback: hlsPlayback.checked,
-        nitterProxyVideos: proxyVideos.checked,
-        nitterMuteVideos: muteVideos.checked,
-        nitterAutoplayGifs: autoplayGifs.checked,
+document.addEventListener("change", () => {
+    browser.storage.local.set({
+        disableTwitter: !disable.checked,
+        twitterProtocol: protocol.value,
     });
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
 })
 
-function changeProtocolSettings(protocol) {
-    let normalDiv = nitterElement.getElementsByClassName("normal")[0];
-    let torDiv = nitterElement.getElementsByClassName("tor")[0];
-    if (protocol == 'normal') {
+function changeProtocolSettings() {
+    let normalDiv = nitterDiv.getElementsByClassName("normal")[0];
+    let torDiv = nitterDiv.getElementsByClassName("tor")[0];
+    if (protocol.value == 'normal') {
         normalDiv.style.display = 'block';
         torDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protocol.value == 'tor') {
         normalDiv.style.display = 'none';
         torDiv.style.display = 'block';
     }
-    if (enableYoutubeCustomSettingsElement.checked)
-        for (const item of customSettingsDivElement) item.style.display = 'block';
-    else
-        for (const item of customSettingsDivElement) item.style.display = 'none';
 }
 
 commonHelper.processDefaultCustomInstances('twitter', 'nitter', 'normal', document);
 commonHelper.processDefaultCustomInstances('twitter', 'nitter', 'tor', document)
-window.onblur = twitterHelper.initNitterCookies;
 
 let latencyElement = document.getElementById("latency");
 let latencyLabel = document.getElementById("latency-label");
diff --git a/src/pages/options/twitter/twitter.pug b/src/pages/options/twitter/twitter.pug
index 230aefd1..af7b7f19 100644
--- a/src/pages/options/twitter/twitter.pug
+++ b/src/pages/options/twitter/twitter.pug
@@ -17,90 +17,9 @@ body.option(dir="auto")
             select#protocol
                 option(value="normal" data-localise="__MSG_normal__") Normal
                 option(value="tor" data-localise="__MSG_tor__") Tor
-                option(value="i2p" data-localise="__MSG_i2p__") I2P
-
-        .some-block.option-block
-            h4(data-localise="__MSG_bypassTwitter__") Bypass "Open in Twitter"
-            input#bypass-watch-on-twitter(type="checkbox")
-
-        .some-block.option-block
-            h4(data-localise="__MSG_enableCustomNitter__") Enable Custom Settings (will use cookies)
-            input#enable-twitter-custom-settings(type="checkbox")
-
-        #nitter 
-            .custom-settings
-                .some-block.option-block
-                    h2 Display 
-                
-                .some-block.option-block
-                    h4(data-localise="__MSG_theme__") Theme
-                    select.theme
-                        option(value="Auto") Auto
-                        option(value="Auto (Twitter)") Auto (Twitter)
-                        option(value="Black") Black
-                        option(value="Mastodon") Mastodon
-                        option(value="Nitter") Nitter
-                        option(value="Pleroma") Pleroma
-                        option(value="Twitter") Twitter
-                        option(value="Twitter Dark") Twitter Dark
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_infiniteScroll__") Infinite scrolling (experimental, requires JavaScript)
-                    input.infiniteScroll(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_stickyProfile__") Make profile sidebar stick to top
-                    input.stickyProfile(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_bidiSupport__") Support bidirectional text (makes clicking on tweets harder)
-                    input.bidiSupport(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_hideTweetStats__") Hide tweet stats (replies, retweets, likes)
-                    input.hideTweetStats(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_hideBanner__") Hide profile banner
-                    input.hideBanner(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_hidePins__") Hide pinned tweets
-                    input.hidePins(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_hideReplies__") Hide tweet replies
-                    input.hideReplies(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_squareAvatars__") Square profile pictures
-                    input.squareAvatars(type="checkbox")
-
-                hr
-
-                .some-block.option-block
-                    h2 Media
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_mp4Playback__") Enable mp4 video playback (only for gifs)
-                    input.mp4Playback(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_hlsPlayback__") Enable hls video streaming (requires JavaScript)
-                    input.hlsPlayback(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_proxyVideos__") Proxy video streaming through the server (might be slow)
-                    input.proxyVideos(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_muteVideos__") Mute videos by default
-                    input.muteVideos(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoplayGifs__") Autoplay gifs
-                    input.autoplayGifs(type="checkbox")
 
+        #nitter
+            hr
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://nitter.com')
@@ -112,7 +31,7 @@ body.option(dir="auto")
             .i2p
                 include ../../widgets/instances.pug
                 +instances('https://nitter.i2p')
-            
+
 
     script(type="module" src="../init.js")
     script(type="module" src="./twitter.js")
diff --git a/src/pages/options/wikipedia/wikipedia.html b/src/pages/options/wikipedia/wikipedia.html
index e09aef9d..c8475f02 100644
--- a/src/pages/options/wikipedia/wikipedia.html
+++ b/src/pages/options/wikipedia/wikipedia.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a class="selected" href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/options/youtube/invidious.js b/src/pages/options/youtube/invidious.js
deleted file mode 100644
index fb1ddff7..00000000
--- a/src/pages/options/youtube/invidious.js
+++ /dev/null
@@ -1,177 +0,0 @@
-import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-import commonHelper from "../../../assets/javascripts/helpers/common.js";
-
-let invidious = document.getElementById('invidious');
-let alwaysProxy = invidious.getElementsByClassName("local")[0];
-let playerStyle = invidious.getElementsByClassName("player_style")[0];
-let quality = invidious.getElementsByClassName("quality")[0];
-let videoLoop = invidious.getElementsByClassName("video_loop")[0];
-let continueAutoplay = invidious.getElementsByClassName("continue_autoplay")[0];
-let invidiousContinue = invidious.getElementsByClassName("continue")[0];
-let youtubeListen = invidious.getElementsByClassName("listen")[0];
-let speed = invidious.getElementsByClassName("speed")[0];
-let qualityDash = invidious.getElementsByClassName("quality_dash")[0];
-let relatedVideo = invidious.getElementsByClassName("related_videos")[0];
-let annotations = invidious.getElementsByClassName("annotations")[0];
-let extendDesc = invidious.getElementsByClassName("extend_desc")[0];
-let vrMode = invidious.getElementsByClassName("vr_mode")[0];
-let savePlayerPos = invidious.getElementsByClassName("save_player_pos")[0];
-let comments0 = invidious.getElementsByClassName("comments[0]")[0];
-let comments1 = invidious.getElementsByClassName("comments[1]")[0];
-let captions0 = invidious.getElementsByClassName("captions[0]")[0];
-let captions1 = invidious.getElementsByClassName("captions[1]")[0];
-let captions2 = invidious.getElementsByClassName("captions[2]")[0];
-let autoplay = invidious.getElementsByClassName("youtubeAutoplay")[0];
-let volume = invidious.getElementsByClassName("volume")[0];
-let volumeValue = invidious.getElementsByClassName("volume-value")[0];
-let region = invidious.getElementsByClassName("region")[0];
-let darkMode = invidious.getElementsByClassName("dark_mode")[0];
-let thin_mode = invidious.getElementsByClassName("thin_mode")[0];
-let default_home = invidious.getElementsByClassName("default_home")[0];
-let feed_menu0 = invidious.getElementsByClassName("feed_menu[0]")[0];
-let feed_menu1 = invidious.getElementsByClassName("feed_menu[1]")[0];
-
-volume.addEventListener("input", () => volumeValue.textContent = `${volume.value}%`);
-
-invidious.addEventListener("change", async _ => {
-  browser.storage.local.get(
-    [
-      "invidiousComments",
-      "invidiousCaptions",
-      "invidiousFeedMenuList",
-    ],
-    async r => {
-      let commentsList = r.invidiousComments;
-      commentsList[0] = comments0.value;
-      commentsList[1] = comments1.value;
-
-      let captionsList = r.invidiousCaptions;
-      captionsList[0] = captions0.value;
-      captionsList[1] = captions1.value;
-      captionsList[2] = captions2.value;
-
-      let feedMenuList = r.invidiousFeedMenuList;
-      feedMenuList[0] = feed_menu0.value;
-      feedMenuList[1] = feed_menu1.value;
-
-      await browser.storage.local.set({
-        invidiousAlwaysProxy: alwaysProxy.checked,
-        youtubeAutoplay: autoplay.checked,
-        invidiousPlayerStyle: playerStyle.value,
-        invidiousQuality: quality.value,
-        invidiousVideoLoop: videoLoop.checked,
-        invidiousContinueAutoplay: continueAutoplay.checked,
-        invidiousContinue: invidiousContinue.checked,
-        youtubeListen: youtubeListen.checked,
-        invidiousSpeed: speed.value,
-        invidiousQualityDash: qualityDash.value,
-        youtubeVolume: volume.value,
-        invidiousComments: commentsList,
-        invidiousCaptions: captionsList,
-        invidiousRelatedVideos: relatedVideo.checked,
-        invidiousAnnotations: annotations.checked,
-        invidiousExtendDesc: extendDesc.checked,
-        invidiousVrMode: vrMode.checked,
-        invidiousSavePlayerPos: savePlayerPos.checked,
-
-        invidiousRegion: region.value,
-        invidiousDarkMode: darkMode.value,
-        invidiousThinMode: thin_mode.checked,
-        invidiousDefaultHome: default_home.value,
-        invidiousFeedMenuList: feedMenuList,
-      });
-    }
-  )
-});
-
-browser.storage.local.get(
-  [
-    "youtubeListen",
-    "youtubeVolume",
-    "youtubeAutoplay",
-    "invidiousQuality",
-    "invidiousAlwaysProxy",
-    "invidiousQuality",
-    "invidiousPlayerStyle",
-    "invidiousVideoLoop",
-    "invidiousContinueAutoplay",
-    "invidiousContinue",
-    "invidiousSpeed",
-    "invidiousQualityDash",
-    "invidiousComments",
-    "invidiousCaptions",
-    "invidiousRelatedVideos",
-    "invidiousAnnotations",
-    "invidiousExtendDesc",
-    "invidiousVrMode",
-    "invidiousSavePlayerPos",
-    "invidiousRegion",
-    "invidiousDarkMode",
-    "invidiousThinMode",
-    "invidiousDefaultHome",
-    "invidiousFeedMenuList",
-  ],
-  r => {
-    videoLoop.checked = r.invidiousVideoLoop;
-    autoplay.checked = r.youtubeAutoplay;
-    playerStyle.value = r.invidiousPlayerStyle;
-
-    continueAutoplay.checked = r.invidiousContinueAutoplay;
-    invidiousContinue.checked = r.invidiousContinue;
-    alwaysProxy.checked = r.invidiousAlwaysProxy;
-    youtubeListen.checked = r.youtubeListen;
-
-    speed.value = r.invidiousSpeed;
-    quality.value = r.invidiousQuality;
-    qualityDash.value = r.invidiousQualityDash;
-
-    volume.value = r.youtubeVolume;
-    volumeValue.textContent = `${r.youtubeVolume}%`;
-
-    comments0.value = r.invidiousComments[0];
-    comments1.value = r.invidiousComments[1];
-
-    captions0.value = r.invidiousCaptions[0];
-    captions1.value = r.invidiousCaptions[1];
-    captions2.value = r.invidiousCaptions[2];
-
-    relatedVideo.checked = r.invidiousRelatedVideos;
-    annotations.checked = r.invidiousAnnotations;
-    extendDesc.checked = r.invidiousExtendDesc;
-    vrMode.checked = r.invidiousVrMode;
-    savePlayerPos.checked = r.invidiousSavePlayerPos;
-
-    region.value = r.invidiousRegion;
-    darkMode.value = r.invidiousDarkMode;
-    thin_mode.checked = r.invidiousThinMode;
-    default_home.value = r.invidiousDefaultHome;
-
-    feed_menu0.value = r.invidiousFeedMenuList[0];
-    feed_menu1.value = r.invidiousFeedMenuList[1];
-
-
-  }
-)
-
-commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document);
-commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'tor', document);
-
-
-let latencyInvidiousElement = document.getElementById("latency-invidious");
-let latencyInvidiousLabel = document.getElementById("latency-invidious-label");
-latencyInvidiousElement.addEventListener("click",
-  async () => {
-    let reloadWindow = () => location.reload();
-    latencyInvidiousElement.addEventListener("click", reloadWindow);
-    await youtubeHelper.init();
-    let redirects = youtubeHelper.getRedirects();
-    const oldHtml = latencyInvidiousLabel.innerHTML;
-    latencyInvidiousLabel.innerHTML = '...';
-    commonHelper.testLatency(latencyInvidiousLabel, redirects.invidious.normal).then(r => {
-      browser.storage.local.set({ invidiousLatency: r });
-      latencyInvidiousLabel.innerHTML = oldHtml;
-      commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document);
-      latencyInvidiousElement.removeEventListener("click", reloadWindow);
-    });
-  }
-);
\ No newline at end of file
diff --git a/src/pages/options/youtube/piped.js b/src/pages/options/youtube/piped.js
deleted file mode 100644
index d8ebe2a4..00000000
--- a/src/pages/options/youtube/piped.js
+++ /dev/null
@@ -1,152 +0,0 @@
-import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-import commonHelper from "../../../assets/javascripts/helpers/common.js";
-
-let piped = document.getElementById('piped');
-
-let pipedListen = piped.getElementsByClassName("listen")[0];
-let pipedQuality = piped.getElementsByClassName("quality")[0];
-let pipedBufferGoal = piped.getElementsByClassName("bufferGoal")[0];
-let pipedRegion = piped.getElementsByClassName("region")[0];
-let pipedHomepage = piped.getElementsByClassName("homepage")[0];
-let pipedComments = piped.getElementsByClassName("comments")[0];
-let pipedMinimizeDescription = piped.getElementsByClassName("minimizeDescription")[0];
-let pipedWatchHistory = piped.getElementsByClassName("watchHistory")[0];
-let pipedDisableLBRY = piped.getElementsByClassName("disableLBRY")[0];
-let pipedProxyLBRY = piped.getElementsByClassName("proxyLBRY")[0];
-
-let pipedSelectedSkipSponsor = piped.getElementsByClassName("selectedSkip-sponsor")[0];
-let pipedSelectedSkipIntro = piped.getElementsByClassName("selectedSkip-intro")[0];
-let pipedSelectedSkipOutro = piped.getElementsByClassName("selectedSkip-outro")[0];
-let pipedSelectedSkipPreview = piped.getElementsByClassName("selectedSkip-preview")[0];
-let pipedSelectedSkipInteraction = piped.getElementsByClassName("selectedSkip-interaction")[0];
-let pipedSelectedSkipSelfpromo = piped.getElementsByClassName("selectedSkip-selfpromo")[0];
-let pipedSelectedSkipMusicOfftopic = piped.getElementsByClassName("selectedSkip-music_offtopic")[0];
-let pipedSelectedSkipPoiHighlight = piped.getElementsByClassName("selectedSkip-poi_highlight")[0];
-let pipedSelectedSkipFiller = piped.getElementsByClassName("selectedSkip-filler")[0];
-
-let pipedDdlTheme = piped.getElementsByClassName("ddlTheme")[0];
-let pipedSponsorblock = piped.getElementsByClassName("sponsorblock")[0];
-let pipedEnabledCodecs = piped.getElementsByClassName("enabledCodecs")[0];
-let autoplay = piped.getElementsByClassName("youtubeAutoplay")[0];
-
-let volume = piped.getElementsByClassName("volume")[0];
-let volumeValue = piped.getElementsByClassName("volume-value")[0];
-
-volume.addEventListener("input", () => volumeValue.textContent = `${volume.value}%`);
-function selectSkipModify(value, boolean) {
-    if (boolean && !selectSkip.includes(value)) {
-        selectSkip.push(value);
-    }
-    else if (!boolean) {
-        let i = selectSkip.indexOf(value);
-        if (i > -1) selectSkip.splice(i, 1);
-    }
-}
-let selectSkip = [];
-piped.addEventListener("change", async () => {
-    let pipedEnabledCodecsResult = [];
-    for (const opt of pipedEnabledCodecs.options)
-        if (opt.selected) pipedEnabledCodecsResult.push(opt.value);
-
-    selectSkipModify('sponsor', pipedSelectedSkipSponsor.checked);
-    selectSkipModify('intro', pipedSelectedSkipIntro.checked);
-    selectSkipModify('outro', pipedSelectedSkipOutro.checked);
-    selectSkipModify('preview', pipedSelectedSkipPreview.checked);
-    selectSkipModify('interaction', pipedSelectedSkipInteraction.checked);
-    selectSkipModify('selfpromo', pipedSelectedSkipSelfpromo.checked);
-    selectSkipModify('music_offtopic', pipedSelectedSkipMusicOfftopic.checked);
-    selectSkipModify('poi_highlight', pipedSelectedSkipPoiHighlight.checked);
-    selectSkipModify('filler', pipedSelectedSkipFiller.checked);
-
-    await browser.storage.local.set({
-        pipedQuality: pipedQuality.value,
-        pipedBufferGoal: pipedBufferGoal.value,
-        pipedRegion: pipedRegion.value,
-        pipedHomepage: pipedHomepage.value,
-        pipedComments: pipedComments.checked,
-        pipedMinimizeDescription: pipedMinimizeDescription.checked,
-        youtubeAutoplay: autoplay.checked,
-        pipedWatchHistory: pipedWatchHistory.checked,
-        pipedDisableLBRY: pipedDisableLBRY.checked,
-        pipedProxyLBRY: pipedProxyLBRY.checked,
-        youtubeVolume: volume.value,
-        pipedSponsorblock: pipedSponsorblock.checked,
-        pipedDdlTheme: pipedDdlTheme.value,
-        pipedEnabledCodecs: pipedEnabledCodecsResult,
-        youtubeListen: pipedListen.checked,
-        pipedSelectedSkip: selectSkip,
-    });
-});
-
-await browser.storage.local.get(
-    [
-        "youtubeVolume",
-        "youtubeAutoplay",
-        "youtubeListen",
-
-        "pipedBufferGoal",
-        "pipedComments",
-        "pipedDisableLBRY",
-        "pipedEnabledCodecs",
-        "pipedHomepage",
-        "pipedMinimizeDescription",
-        "pipedProxyLBRY",
-        "pipedQuality",
-        "pipedRegion",
-        "pipedSelectedSkip",
-        "pipedSponsorblock",
-        "pipedDdlTheme",
-        "pipedWatchHistory",
-    ],
-    r => {
-        pipedSponsorblock.checked = r.pipedSponsorblock;
-        pipedDdlTheme.value = r.pipedDdlTheme;
-        selectSkip = r.pipedSelectedSkip;
-        pipedSelectedSkipSponsor.checked = selectSkip.includes('sponsor');
-        pipedSelectedSkipIntro.checked = selectSkip.includes('intro');
-        pipedSelectedSkipOutro.checked = selectSkip.includes('outro');
-        pipedSelectedSkipPreview.checked = selectSkip.includes('preview');
-        autoplay.checked = r.youtubeAutoplay;
-        pipedSelectedSkipInteraction.checked = selectSkip.includes('interaction');
-        pipedSelectedSkipSelfpromo.checked = selectSkip.includes('selfpromo');
-        pipedSelectedSkipMusicOfftopic.checked = selectSkip.includes('music_offtopic');
-        pipedSelectedSkipPoiHighlight.checked = selectSkip.includes('poi_highlight');
-        pipedSelectedSkipFiller.checked = selectSkip.includes('filler');
-        pipedListen.checked = r.youtubeListen;
-        pipedQuality.value = r.pipedQuality;
-        pipedBufferGoal.value = r.pipedBufferGoal;
-        pipedRegion.value = r.pipedRegion;
-        pipedHomepage.value = r.pipedHomepage;
-        pipedComments.checked = r.pipedComments;
-        pipedMinimizeDescription.checked = r.pipedMinimizeDescription;
-        pipedWatchHistory.checked = r.pipedWatchHistory;
-        pipedEnabledCodecs.value = r.pipedEnabledCodecs;
-        pipedDisableLBRY.checked = r.pipedDisableLBRY;
-        pipedProxyLBRY.checked = r.pipedProxyLBRY;
-
-        volume.value = r.youtubeVolume;
-        volumeValue.textContent = `${r.youtubeVolume}%`;
-    }
-);
-
-commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document);
-commonHelper.processDefaultCustomInstances('youtube', 'piped', 'tor', document);
-
-let latencyPipedElement = document.getElementById("latency-piped");
-let latencyPipedLabel = document.getElementById("latency-piped-label");
-latencyPipedElement.addEventListener("click",
-    async () => {
-        let reloadWindow = () => location.reload();
-        latencyPipedElement.addEventListener("click", reloadWindow);
-        await youtubeHelper.init();
-        let redirects = youtubeHelper.getRedirects();
-        const oldHtml = latencyPipedLabel.innerHTML;
-        latencyPipedLabel.innerHTML = '...';
-        commonHelper.testLatency(latencyPipedLabel, redirects.piped.normal).then(r => {
-            browser.storage.local.set({ pipedLatency: r });
-            latencyPipedLabel.innerHTML = oldHtml;
-            commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document);
-            latencyPipedElement.removeEventListener("click", reloadWindow);
-        });
-    }
-);
diff --git a/src/pages/options/youtube/pipedMaterial.js b/src/pages/options/youtube/pipedMaterial.js
deleted file mode 100644
index 3dc0e677..00000000
--- a/src/pages/options/youtube/pipedMaterial.js
+++ /dev/null
@@ -1,125 +0,0 @@
-import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-import commonHelper from "../../../assets/javascripts/helpers/common.js";
-
-let pipedMaterialElement = document.getElementById('pipedMaterial');
-let listenElement = pipedMaterialElement.getElementsByClassName("listen")[0];
-let disableLBRYElement = pipedMaterialElement.getElementsByClassName("disableLBRY")[0];
-let proxyLBRYElement = pipedMaterialElement.getElementsByClassName("proxyLBRY")[0];
-let sponsorblockElement = pipedMaterialElement.getElementsByClassName("sponsorblock")[0];
-let skipToLastPointElement = pipedMaterialElement.getElementsByClassName("skipToLastPoint")[0];
-
-let selectedSkipSponsorElement = pipedMaterialElement.getElementsByClassName("selectedSkip-sponsor")[0];
-let selectedSkipIntroElement = pipedMaterialElement.getElementsByClassName("selectedSkip-intro")[0];
-let selectedSkipOutroElement = pipedMaterialElement.getElementsByClassName("selectedSkip-outro")[0];
-let selectedSkipPreviewElement = pipedMaterialElement.getElementsByClassName("selectedSkip-preview")[0];
-let selectedSkipInteractionElement = pipedMaterialElement.getElementsByClassName("selectedSkip-interaction")[0];
-let selectedSkipSelfpromoElement = pipedMaterialElement.getElementsByClassName("selectedSkip-selfpromo")[0];
-let selectedSkipMusicOfftopicElement = pipedMaterialElement.getElementsByClassName("selectedSkip-music_offtopic")[0];
-
-let autoplayElement = pipedMaterialElement.getElementsByClassName("youtubeAutoplay")[0];
-
-let volumeElement = pipedMaterialElement.getElementsByClassName("volume")[0];
-let volumeValueElement = pipedMaterialElement.getElementsByClassName("volume-value")[0];
-
-volumeElement.addEventListener("input", () => volumeValueElement.textContent = `${volumeElement.value}%`);
-
-let selectSkip = [];
-function selectSkipModify(value, boolean) {
-    if (boolean && !selectSkip.includes(value)) {
-        selectSkip.push(value);
-    }
-    else if (!boolean) {
-        let i = selectSkip.indexOf(value);
-        if (i > -1) selectSkip.splice(i, 1);
-    }
-}
-pipedMaterialElement.addEventListener("change", async () => {
-    console.log("changed piped settings");
-
-    selectSkipModify('sponsors', selectedSkipSponsorElement.checked);
-    selectSkipModify('intro', selectedSkipIntroElement.checked);
-    selectSkipModify('outro', selectedSkipOutroElement.checked);
-    selectSkipModify('preview', selectedSkipPreviewElement.checked);
-    selectSkipModify('interaction', selectedSkipInteractionElement.checked);
-    selectSkipModify('selfpromo', selectedSkipSelfpromoElement.checked);
-    selectSkipModify('music_offtopic', selectedSkipMusicOfftopicElement.checked);
-
-    await browser.storage.local.set({
-        youtubeListen: listenElement.checked,
-        pipedDisableLBRY: disableLBRYElement.checked,
-        pipedProxyLBRY: proxyLBRYElement.checked,
-        pipedSponsorblock: sponsorblockElement.checked,
-        pipedSkipToLastPoint: skipToLastPointElement.checked,
-        pipedSelectedSkipSponsor: selectedSkipSponsorElement.checked,
-        pipedSelectedSkipIntro: selectedSkipIntroElement.checked,
-        pipedSelectedSkipOutro: selectedSkipOutroElement.checked,
-        youtubeAutoplay: autoplayElement.checked,
-        youtubeVolume: volumeElement.value,
-        pipedSelectedSkipPreview: selectedSkipPreviewElement.checked,
-        pipedSelectedSkipInteraction: selectedSkipInteractionElement.checked,
-        pipedSelectedSkipSelfpromo: selectedSkipSelfpromoElement.checked,
-        pipedSelectedSkipMusicOfftopic: selectedSkipMusicOfftopicElement.checked,
-
-        pipedSponsorblock: sponsorblockElement.checked,
-        pipedMaterialSkipToLastPoint: skipToLastPointElement.checked,
-        pipedSelectedSkip: selectSkip,
-    });
-    init();
-});
-
-browser.storage.local.get(
-    [
-        "youtubeAutoplay",
-        "youtubeVolume",
-        "youtubeListen",
-
-        "pipedDisableLBRY",
-        "pipedProxyLBRY",
-        "pipedSelectedSkip",
-        "pipedSponsorblock",
-
-        "pipedMaterialSkipToLastPoint",
-    ],
-    r => {
-        autoplayElement.checked = r.youtubeAutoplay;
-
-        listenElement.checked = r.youtubeListen;
-        disableLBRYElement.checked = r.pipedDisableLBRY;
-        proxyLBRYElement.checked = r.pipedProxyLBRY;
-        sponsorblockElement.checked = r.pipedSponsorblock;
-        skipToLastPointElement.checked = r.pipedMaterialSkipToLastPoint;
-
-        selectSkip = r.pipedSelectedSkip;
-        selectedSkipSponsorElement.checked = selectSkip.includes('sponsors');
-        selectedSkipIntroElement.checked = selectSkip.includes('intro');
-        selectedSkipOutroElement.checked = selectSkip.includes('outro');
-        selectedSkipPreviewElement.checked = selectSkip.includes('preview');
-        selectedSkipInteractionElement.checked = selectSkip.includes('interaction');
-        selectedSkipSelfpromoElement.checked = selectSkip.includes('selfpromo');
-        selectedSkipMusicOfftopicElement.checked = selectSkip.includes('music_offtopic');
-
-        volumeElement.value = r.youtubeVolume;
-        volumeValueElement.textContent = `${r.youtubeVolume}%`;
-    });
-
-commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'normal',  document);
-commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'tor',  document);
-
-let latencyPipedMaterialElement = document.getElementById("latency-pipedMaterial");
-let latencyPipedMaterialLabel = document.getElementById("latency-pipedMaterial-label");
-latencyPipedMaterialElement.addEventListener("click",
-    async () => {
-        let reloadWindow = () => location.reload();
-        latencyPipedMaterialElement.addEventListener("click", reloadWindow);
-        await youtubeHelper.init();
-        let redirects = youtubeHelper.getRedirects();
-        const oldHtml = latencyPipedMaterialLabel.innerHTML;
-        latencyPipedMaterialLabel.innerHTML = '...';
-        commonHelper.testLatency(latencyPipedMaterialLabel, redirects.pipedMaterial.normal).then(r => {
-            browser.storage.local.set({ pipedMaterialLatency: r });
-            latencyPipedMaterialLabel.innerHTML = oldHtml;
-            commonHelper.processDefaultCustomInstances('youtube' ,'pipedMaterial', 'normal',  document);
-            latencyPipedMaterialElement.removeEventListener("click", reloadWindow);
-        });
-    }
-);
\ No newline at end of file
diff --git a/src/pages/options/youtube/youtube.html b/src/pages/options/youtube/youtube.html
index 04d6df46..6dfb9f7f 100644
--- a/src/pages/options/youtube/youtube.html
+++ b/src/pages/options/youtube/youtube.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a class="selected" href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
@@ -69,7 +69,6 @@
         <option value="yatte">Yattee</option>
       </select>
     </div>
-    <hr>
     <div id="freetube-yatte">
       <div class="some-block option-block">
         <h4 data-localise="__MSG_embeddedVids__">Embedded Videos Frontend</h4>
@@ -80,7 +79,6 @@
           <option value="youtube">Youtube</option>
         </select>
       </div>
-      <hr>
     </div>
     <div id="invidious-piped-pipedMaterial">
       <div class="some-block option-block">
@@ -98,680 +96,8 @@
           <option value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__">Only Not Embedded</option>
         </select>
       </div>
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_bypassYoutube__">Bypass "Watch On YouTube"</h4>
-        <input id="bypass-watch-on-youtube" type="checkbox">
-      </div>
-      <div class="some-block option-block">
-        <h4 data-localise="__MSG_enableCustom__">Enable Custom Settings (will use cookies and localStorage)</h4>
-        <input id="enable-youtube-custom-settings" type="checkbox">
-      </div>
     </div>
     <div id="invidious">
-      <div class="custom-settings">
-        <hr>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_alwaysLoop__">Always loop</h4>
-          <input class="video_loop" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoplayVid__">Autoplay Video</h4>
-          <input class="youtubeAutoplay" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_playNext__">Play next by default</h4>
-          <input class="continue" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoplayNext__">Autoplay next video</h4>
-          <input class="continue_autoplay" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_alwaysProxy__">Always proxy videos</h4>
-          <input class="local" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_listenByDefault__">Listen by default</h4>
-          <input class="listen" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_defaultSpeed__">Default speed</h4>
-          <select class="speed">
-            <option>2.0</option>
-            <option>1.75</option>
-            <option>1.5</option>
-            <option>1.25</option>
-            <option>1.0</option>
-            <option>0.75</option>
-            <option>0.5</option>
-            <option>0.25</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_prefQuality__">Preferred video quality</h4>
-          <select class="quality">
-            <option value="hd720">720p</option>
-            <option value="medium">480p</option>
-            <option value="dash" data-localise="__MSG_dash__">DASH (adaptive quality)</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_prefDashQuality__">Preferred DASH video quality</h4>
-          <select class="quality_dash">
-            <option value="auto" data-localise="__MSG_auto__">Auto</option>
-            <option value="best" data-localise="__MSG_best__">Best</option>
-            <option value="4320p">4320p</option>
-            <option value="2160p">2160p</option>
-            <option value="1440p">1440p</option>
-            <option value="1080p">1080p</option>
-            <option value="720p">720p</option>
-            <option value="480p">480p</option>
-            <option value="360p">360p</option>
-            <option value="240p">240p</option>
-            <option value="144p">144p</option>
-            <option value="worst" data-localise="__MSG_worst__">Worst</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4>
-            <x data-localise="__MSG_volume__">Volume:</x><span class="volume-value">--%</span>
-          </h4>
-          <input class="volume" type="range" min="0" max="100" step="1">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_defaultComments__">Default comments</h4>
-          <select class="comments[0]">
-            <option value="" data-localise="__MSG_none__">none</option>
-            <option value="youtube">YouTube</option>
-            <option value="reddit">Reddit</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4> </h4>
-          <select class="comments[1]">
-            <option value="" data-localise="__MSG_none__">none</option>
-            <option value="youtube">YouTube</option>
-            <option value="reddit">Reddit</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_defaultCaptions__">Default captions</h4>
-          <select class="captions[0]">
-            <option value="" data-localise="__MSG_none__">none</option>
-            <option value="English">English</option>
-            <option value="English (auto-generated)">English (auto-generated)</option>
-            <option value="English (United Kingdom)">English (United Kingdom)</option>
-            <option value="English (United States)">English (United States)</option>
-            <option value="Afrikaans">Afrikaans</option>
-            <option value="Albanian">Albanian</option>
-            <option value="Amharic">Amharic</option>
-            <option value="Arabic">Arabic</option>
-            <option value="Armenian">Armenian</option>
-            <option value="Azerbaijani">Azerbaijani</option>
-            <option value="Bangla">Bangla</option>
-            <option value="Basque">Basque</option>
-            <option value="Belarusian">Belarusian</option>
-            <option value="Bosnian">Bosnian</option>
-            <option value="Bulgarian">Bulgarian</option>
-            <option value="Burmese">Burmese</option>
-            <option value="Cantonese (Hong Kong)">Cantonese (Hong Kong)</option>
-            <option value="Catalan">Catalan</option>
-            <option value="Cebuano">Cebuano</option>
-            <option value="Chinese">Chinese</option>
-            <option value="Chinese (China)">Chinese (China)</option>
-            <option value="Chinese (Hong Kong)">Chinese (Hong Kong)</option>
-            <option value="Chinese (Simplified)">Chinese (Simplified)</option>
-            <option value="Chinese (Taiwan)">Chinese (Taiwan)</option>
-            <option value="Chinese (Traditional)">Chinese (Traditional)</option>
-            <option value="Corsican">Corsican</option>
-            <option value="Croatian">Croatian</option>
-            <option value="Czech">Czech</option>
-            <option value="Danish">Danish</option>
-            <option value="Dutch">Dutch</option>
-            <option value="Dutch (auto-generated)">Dutch (auto-generated)</option>
-            <option value="Esperanto">Esperanto</option>
-            <option value="Estonian">Estonian</option>
-            <option value="Filipino">Filipino</option>
-            <option value="Finnish">Finnish</option>
-            <option value="French">French</option>
-            <option value="French (auto-generated)">French (auto-generated)</option>
-            <option value="Galician">Galician</option>
-            <option value="Georgian">Georgian</option>
-            <option value="German">German</option>
-            <option value="German (auto-generated)">German (auto-generated)</option>
-            <option value="Greek">Greek</option>
-            <option value="Gujarati">Gujarati</option>
-            <option value="Haitian Creole">Haitian Creole</option>
-            <option value="Hausa">Hausa</option>
-            <option value="Hawaiian">Hawaiian</option>
-            <option value="Hebrew">Hebrew</option>
-            <option value="Hindi">Hindi</option>
-            <option value="Hmong">Hmong</option>
-            <option value="Hungarian">Hungarian</option>
-            <option value="Icelandic">Icelandic</option>
-            <option value="Igbo">Igbo</option>
-            <option value="Indonesian">Indonesian</option>
-            <option value="Indonesian (auto-generated)">Indonesian (auto-generated)</option>
-            <option value="Interlingue">Interlingue</option>
-            <option value="Irish">Irish</option>
-            <option value="Italian">Italian</option>
-            <option value="Italian (auto-generated)">Italian (auto-generated)</option>
-            <option value="Japanese">Japanese</option>
-            <option value="Japanese (auto-generated)">Japanese (auto-generated)</option>
-            <option value="Javanese">Javanese</option>
-            <option value="Kannada">Kannada</option>
-            <option value="Kazakh">Kazakh</option>
-            <option value="Khmer">Khmer</option>
-            <option value="Korean">Korean</option>
-            <option value="Korean (auto-generated)">Korean (auto-generated)</option>
-            <option value="Kurdish">Kurdish</option>
-            <option value="Kyrgyz">Kyrgyz</option>
-            <option value="Lao">Lao</option>
-            <option value="Latin">Latin</option>
-            <option value="Latvian">Latvian</option>
-            <option value="Lithuanian">Lithuanian</option>
-            <option value="Luxembourgish">Luxembourgish</option>
-            <option value="Macedonian">Macedonian</option>
-            <option value="Malagasy">Malagasy</option>
-            <option value="Malay">Malay</option>
-            <option value="Malayalam">Malayalam</option>
-            <option value="Maltese">Maltese</option>
-            <option value="Maori">Maori</option>
-            <option value="Marathi">Marathi</option>
-            <option value="Mongolian">Mongolian</option>
-            <option value="Nepali">Nepali</option>
-            <option value="Norwegian Bokmål">Norwegian Bokmål</option>
-            <option value="Nyanja">Nyanja</option>
-            <option value="Pashto">Pashto</option>
-            <option value="Persian">Persian</option>
-            <option value="Polish">Polish</option>
-            <option value="Portuguese">Portuguese</option>
-            <option value="Portuguese (auto-generated)">Portuguese (auto-generated)</option>
-            <option value="Portuguese (Brazil)">Portuguese (Brazil)</option>
-            <option value="Punjabi">Punjabi</option>
-            <option value="Romanian">Romanian</option>
-            <option value="Russian">Russian</option>
-            <option value="Russian (auto-generated)">Russian (auto-generated)</option>
-            <option value="Samoan">Samoan</option>
-            <option value="Scottish Gaelic">Scottish Gaelic</option>
-            <option value="Serbian">Serbian</option>
-            <option value="Shona">Shona</option>
-            <option value="Sindhi">Sindhi</option>
-            <option value="Sinhala">Sinhala</option>
-            <option value="Slovak">Slovak</option>
-            <option value="Slovenian">Slovenian</option>
-            <option value="Somali">Somali</option>
-            <option value="Southern Sotho">Southern Sotho</option>
-            <option value="Spanish">Spanish</option>
-            <option value="Spanish (auto-generated)">Spanish (auto-generated)</option>
-            <option value="Spanish (Latin America)">Spanish (Latin America)</option>
-            <option value="Spanish (Mexico)">Spanish (Mexico)</option>
-            <option value="Spanish (Spain)">Spanish (Spain)</option>
-            <option value="Sundanese">Sundanese</option>
-            <option value="Swahili">Swahili</option>
-            <option value="Swedish">Swedish</option>
-            <option value="Tajik">Tajik</option>
-            <option value="Tamil">Tamil</option>
-            <option value="Telugu">Telugu</option>
-            <option value="Thai">Thai</option>
-            <option value="Turkish">Turkish</option>
-            <option value="Turkish (auto-generated)">Turkish (auto-generated)</option>
-            <option value="Ukrainian">Ukrainian</option>
-            <option value="Urdu">Urdu</option>
-            <option value="Uzbek">Uzbek</option>
-            <option value="Vietnamese">Vietnamese</option>
-            <option value="Vietnamese (auto-generated)">Vietnamese (auto-generated)</option>
-            <option value="Welsh">Welsh</option>
-            <option value="Western Frisian">Western Frisian</option>
-            <option value="Xhosa">Xhosa</option>
-            <option value="Yiddish">Yiddish</option>
-            <option value="Yoruba">Yoruba</option>
-            <option value="Zulu">Zulu</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4></h4>
-          <select class="captions[1]">
-            <option value="" data-localise="__MSG_none__">none</option>
-            <option value="English">English</option>
-            <option value="English (auto-generated)">English (auto-generated)</option>
-            <option value="English (United Kingdom)">English (United Kingdom)</option>
-            <option value="English (United States)">English (United States)</option>
-            <option value="Afrikaans">Afrikaans</option>
-            <option value="Albanian">Albanian</option>
-            <option value="Amharic">Amharic</option>
-            <option value="Arabic">Arabic</option>
-            <option value="Armenian">Armenian</option>
-            <option value="Azerbaijani">Azerbaijani</option>
-            <option value="Bangla">Bangla</option>
-            <option value="Basque">Basque</option>
-            <option value="Belarusian">Belarusian</option>
-            <option value="Bosnian">Bosnian</option>
-            <option value="Bulgarian">Bulgarian</option>
-            <option value="Burmese">Burmese</option>
-            <option value="Cantonese (Hong Kong)">Cantonese (Hong Kong)</option>
-            <option value="Catalan">Catalan</option>
-            <option value="Cebuano">Cebuano</option>
-            <option value="Chinese">Chinese</option>
-            <option value="Chinese (China)">Chinese (China)</option>
-            <option value="Chinese (Hong Kong)">Chinese (Hong Kong)</option>
-            <option value="Chinese (Simplified)">Chinese (Simplified)</option>
-            <option value="Chinese (Taiwan)">Chinese (Taiwan)</option>
-            <option value="Chinese (Traditional)">Chinese (Traditional)</option>
-            <option value="Corsican">Corsican</option>
-            <option value="Croatian">Croatian</option>
-            <option value="Czech">Czech</option>
-            <option value="Danish">Danish</option>
-            <option value="Dutch">Dutch</option>
-            <option value="Dutch (auto-generated)">Dutch (auto-generated)</option>
-            <option value="Esperanto">Esperanto</option>
-            <option value="Estonian">Estonian</option>
-            <option value="Filipino">Filipino</option>
-            <option value="Finnish">Finnish</option>
-            <option value="French">French</option>
-            <option value="French (auto-generated)">French (auto-generated)</option>
-            <option value="Galician">Galician</option>
-            <option value="Georgian">Georgian</option>
-            <option value="German">German</option>
-            <option value="German (auto-generated)">German (auto-generated)</option>
-            <option value="Greek">Greek</option>
-            <option value="Gujarati">Gujarati</option>
-            <option value="Haitian Creole">Haitian Creole</option>
-            <option value="Hausa">Hausa</option>
-            <option value="Hawaiian">Hawaiian</option>
-            <option value="Hebrew">Hebrew</option>
-            <option value="Hindi">Hindi</option>
-            <option value="Hmong">Hmong</option>
-            <option value="Hungarian">Hungarian</option>
-            <option value="Icelandic">Icelandic</option>
-            <option value="Igbo">Igbo</option>
-            <option value="Indonesian">Indonesian</option>
-            <option value="Indonesian (auto-generated)">Indonesian (auto-generated)</option>
-            <option value="Interlingue">Interlingue</option>
-            <option value="Irish">Irish</option>
-            <option value="Italian">Italian</option>
-            <option value="Italian (auto-generated)">Italian (auto-generated)</option>
-            <option value="Japanese">Japanese</option>
-            <option value="Japanese (auto-generated)">Japanese (auto-generated)</option>
-            <option value="Javanese">Javanese</option>
-            <option value="Kannada">Kannada</option>
-            <option value="Kazakh">Kazakh</option>
-            <option value="Khmer">Khmer</option>
-            <option value="Korean">Korean</option>
-            <option value="Korean (auto-generated)">Korean (auto-generated)</option>
-            <option value="Kurdish">Kurdish</option>
-            <option value="Kyrgyz">Kyrgyz</option>
-            <option value="Lao">Lao</option>
-            <option value="Latin">Latin</option>
-            <option value="Latvian">Latvian</option>
-            <option value="Lithuanian">Lithuanian</option>
-            <option value="Luxembourgish">Luxembourgish</option>
-            <option value="Macedonian">Macedonian</option>
-            <option value="Malagasy">Malagasy</option>
-            <option value="Malay">Malay</option>
-            <option value="Malayalam">Malayalam</option>
-            <option value="Maltese">Maltese</option>
-            <option value="Maori">Maori</option>
-            <option value="Marathi">Marathi</option>
-            <option value="Mongolian">Mongolian</option>
-            <option value="Nepali">Nepali</option>
-            <option value="Norwegian Bokmål">Norwegian Bokmål</option>
-            <option value="Nyanja">Nyanja</option>
-            <option value="Pashto">Pashto</option>
-            <option value="Persian">Persian</option>
-            <option value="Polish">Polish</option>
-            <option value="Portuguese">Portuguese</option>
-            <option value="Portuguese (auto-generated)">Portuguese (auto-generated)</option>
-            <option value="Portuguese (Brazil)">Portuguese (Brazil)</option>
-            <option value="Punjabi">Punjabi</option>
-            <option value="Romanian">Romanian</option>
-            <option value="Russian">Russian</option>
-            <option value="Russian (auto-generated)">Russian (auto-generated)</option>
-            <option value="Samoan">Samoan</option>
-            <option value="Scottish Gaelic">Scottish Gaelic</option>
-            <option value="Serbian">Serbian</option>
-            <option value="Shona">Shona</option>
-            <option value="Sindhi">Sindhi</option>
-            <option value="Sinhala">Sinhala</option>
-            <option value="Slovak">Slovak</option>
-            <option value="Slovenian">Slovenian</option>
-            <option value="Somali">Somali</option>
-            <option value="Southern Sotho">Southern Sotho</option>
-            <option value="Spanish">Spanish</option>
-            <option value="Spanish (auto-generated)">Spanish (auto-generated)</option>
-            <option value="Spanish (Latin America)">Spanish (Latin America)</option>
-            <option value="Spanish (Mexico)">Spanish (Mexico)</option>
-            <option value="Spanish (Spain)">Spanish (Spain)</option>
-            <option value="Sundanese">Sundanese</option>
-            <option value="Swahili">Swahili</option>
-            <option value="Swedish">Swedish</option>
-            <option value="Tajik">Tajik</option>
-            <option value="Tamil">Tamil</option>
-            <option value="Telugu">Telugu</option>
-            <option value="Thai">Thai</option>
-            <option value="Turkish">Turkish</option>
-            <option value="Turkish (auto-generated)">Turkish (auto-generated)</option>
-            <option value="Ukrainian">Ukrainian</option>
-            <option value="Urdu">Urdu</option>
-            <option value="Uzbek">Uzbek</option>
-            <option value="Vietnamese">Vietnamese</option>
-            <option value="Vietnamese (auto-generated)">Vietnamese (auto-generated)</option>
-            <option value="Welsh">Welsh</option>
-            <option value="Western Frisian">Western Frisian</option>
-            <option value="Xhosa">Xhosa</option>
-            <option value="Yiddish">Yiddish</option>
-            <option value="Yoruba">Yoruba</option>
-            <option value="Zulu">Zulu</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4></h4>
-          <select class="captions[2]">
-            <option value="" data-localise="__MSG_none__">none</option>
-            <option value="English">English</option>
-            <option value="English (auto-generated)">English (auto-generated)</option>
-            <option value="English (United Kingdom)">English (United Kingdom)</option>
-            <option value="English (United States)">English (United States)</option>
-            <option value="Afrikaans">Afrikaans</option>
-            <option value="Albanian">Albanian</option>
-            <option value="Amharic">Amharic</option>
-            <option value="Arabic">Arabic</option>
-            <option value="Armenian">Armenian</option>
-            <option value="Azerbaijani">Azerbaijani</option>
-            <option value="Bangla">Bangla</option>
-            <option value="Basque">Basque</option>
-            <option value="Belarusian">Belarusian</option>
-            <option value="Bosnian">Bosnian</option>
-            <option value="Bulgarian">Bulgarian</option>
-            <option value="Burmese">Burmese</option>
-            <option value="Cantonese (Hong Kong)">Cantonese (Hong Kong)</option>
-            <option value="Catalan">Catalan</option>
-            <option value="Cebuano">Cebuano</option>
-            <option value="Chinese">Chinese</option>
-            <option value="Chinese (China)">Chinese (China)</option>
-            <option value="Chinese (Hong Kong)">Chinese (Hong Kong)</option>
-            <option value="Chinese (Simplified)">Chinese (Simplified)</option>
-            <option value="Chinese (Taiwan)">Chinese (Taiwan)</option>
-            <option value="Chinese (Traditional)">Chinese (Traditional)</option>
-            <option value="Corsican">Corsican</option>
-            <option value="Croatian">Croatian</option>
-            <option value="Czech">Czech</option>
-            <option value="Danish">Danish</option>
-            <option value="Dutch">Dutch</option>
-            <option value="Dutch (auto-generated)">Dutch (auto-generated)</option>
-            <option value="Esperanto">Esperanto</option>
-            <option value="Estonian">Estonian</option>
-            <option value="Filipino">Filipino</option>
-            <option value="Finnish">Finnish</option>
-            <option value="French">French</option>
-            <option value="French (auto-generated)">French (auto-generated)</option>
-            <option value="Galician">Galician</option>
-            <option value="Georgian">Georgian</option>
-            <option value="German">German</option>
-            <option value="German (auto-generated)">German (auto-generated)</option>
-            <option value="Greek">Greek</option>
-            <option value="Gujarati">Gujarati</option>
-            <option value="Haitian Creole">Haitian Creole</option>
-            <option value="Hausa">Hausa</option>
-            <option value="Hawaiian">Hawaiian</option>
-            <option value="Hebrew">Hebrew</option>
-            <option value="Hindi">Hindi</option>
-            <option value="Hmong">Hmong</option>
-            <option value="Hungarian">Hungarian</option>
-            <option value="Icelandic">Icelandic</option>
-            <option value="Igbo">Igbo</option>
-            <option value="Indonesian">Indonesian</option>
-            <option value="Indonesian (auto-generated)">Indonesian (auto-generated)</option>
-            <option value="Interlingue">Interlingue</option>
-            <option value="Irish">Irish</option>
-            <option value="Italian">Italian</option>
-            <option value="Italian (auto-generated)">Italian (auto-generated)</option>
-            <option value="Japanese">Japanese</option>
-            <option value="Japanese (auto-generated)">Japanese (auto-generated)</option>
-            <option value="Javanese">Javanese</option>
-            <option value="Kannada">Kannada</option>
-            <option value="Kazakh">Kazakh</option>
-            <option value="Khmer">Khmer</option>
-            <option value="Korean">Korean</option>
-            <option value="Korean (auto-generated)">Korean (auto-generated)</option>
-            <option value="Kurdish">Kurdish</option>
-            <option value="Kyrgyz">Kyrgyz</option>
-            <option value="Lao">Lao</option>
-            <option value="Latin">Latin</option>
-            <option value="Latvian">Latvian</option>
-            <option value="Lithuanian">Lithuanian</option>
-            <option value="Luxembourgish">Luxembourgish</option>
-            <option value="Macedonian">Macedonian</option>
-            <option value="Malagasy">Malagasy</option>
-            <option value="Malay">Malay</option>
-            <option value="Malayalam">Malayalam</option>
-            <option value="Maltese">Maltese</option>
-            <option value="Maori">Maori</option>
-            <option value="Marathi">Marathi</option>
-            <option value="Mongolian">Mongolian</option>
-            <option value="Nepali">Nepali</option>
-            <option value="Norwegian Bokmål">Norwegian Bokmål</option>
-            <option value="Nyanja">Nyanja</option>
-            <option value="Pashto">Pashto</option>
-            <option value="Persian">Persian</option>
-            <option value="Polish">Polish</option>
-            <option value="Portuguese">Portuguese</option>
-            <option value="Portuguese (auto-generated)">Portuguese (auto-generated)</option>
-            <option value="Portuguese (Brazil)">Portuguese (Brazil)</option>
-            <option value="Punjabi">Punjabi</option>
-            <option value="Romanian">Romanian</option>
-            <option value="Russian">Russian</option>
-            <option value="Russian (auto-generated)">Russian (auto-generated)</option>
-            <option value="Samoan">Samoan</option>
-            <option value="Scottish Gaelic">Scottish Gaelic</option>
-            <option value="Serbian">Serbian</option>
-            <option value="Shona">Shona</option>
-            <option value="Sindhi">Sindhi</option>
-            <option value="Sinhala">Sinhala</option>
-            <option value="Slovak">Slovak</option>
-            <option value="Slovenian">Slovenian</option>
-            <option value="Somali">Somali</option>
-            <option value="Southern Sotho">Southern Sotho</option>
-            <option value="Spanish">Spanish</option>
-            <option value="Spanish (auto-generated)">Spanish (auto-generated)</option>
-            <option value="Spanish (Latin America)">Spanish (Latin America)</option>
-            <option value="Spanish (Mexico)">Spanish (Mexico)</option>
-            <option value="Spanish (Spain)">Spanish (Spain)</option>
-            <option value="Sundanese">Sundanese</option>
-            <option value="Swahili">Swahili</option>
-            <option value="Swedish">Swedish</option>
-            <option value="Tajik">Tajik</option>
-            <option value="Tamil">Tamil</option>
-            <option value="Telugu">Telugu</option>
-            <option value="Thai">Thai</option>
-            <option value="Turkish">Turkish</option>
-            <option value="Turkish (auto-generated)">Turkish (auto-generated)</option>
-            <option value="Ukrainian">Ukrainian</option>
-            <option value="Urdu">Urdu</option>
-            <option value="Uzbek">Uzbek</option>
-            <option value="Vietnamese">Vietnamese</option>
-            <option value="Vietnamese (auto-generated)">Vietnamese (auto-generated)</option>
-            <option value="Welsh">Welsh</option>
-            <option value="Western Frisian">Western Frisian</option>
-            <option value="Xhosa">Xhosa</option>
-            <option value="Yiddish">Yiddish</option>
-            <option value="Yoruba">Yoruba</option>
-            <option value="Zulu">Zulu</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_showRelated__">Show related videos</h4>
-          <input class="related_videos" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_showAnnotations__">Show annotations by default</h4>
-          <input class="annotations" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoExtendDesc__">Automatically extend video description</h4>
-          <input class="extend_desc" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_interactive360__">Interactive 360 degree videos (requires WebGL)</h4>
-          <input class="vr_mode" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_savePlaybackPos__">Save playback position</h4>
-          <input class="save_player_pos" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_region__">Select country</h4>
-          <select class="region">
-            <option value="AE">AE</option>
-            <option value="AR">AR</option>
-            <option value="AT">AT</option>
-            <option value="AU">AU</option>
-            <option value="AZ">AZ</option>
-            <option value="BA">BA</option>
-            <option value="BD">BD</option>
-            <option value="BE">BE</option>
-            <option value="BG">BG</option>
-            <option value="BH">BH</option>
-            <option value="BO">BO</option>
-            <option value="BR">BR</option>
-            <option value="BY">BY</option>
-            <option value="CA">CA</option>
-            <option value="CH">CH</option>
-            <option value="CL">CL</option>
-            <option value="CO">CO</option>
-            <option value="CR">CR</option>
-            <option value="CY">CY</option>
-            <option value="CZ">CZ</option>
-            <option value="DE">DE</option>
-            <option value="DK">DK</option>
-            <option value="DO">DO</option>
-            <option value="DZ">DZ</option>
-            <option value="EC">EC</option>
-            <option value="EE">EE</option>
-            <option value="EG">EG</option>
-            <option value="ES">ES</option>
-            <option value="FI">FI</option>
-            <option value="FR">FR</option>
-            <option value="GB">GB</option>
-            <option value="GE">GE</option>
-            <option value="GH">GH</option>
-            <option value="GR">GR</option>
-            <option value="GT">GT</option>
-            <option value="HK">HK</option>
-            <option value="HN">HN</option>
-            <option value="HR">HR</option>
-            <option value="HU">HU</option>
-            <option value="ID">ID</option>
-            <option value="IE">IE</option>
-            <option value="IL">IL</option>
-            <option value="IN">IN</option>
-            <option value="IQ">IQ</option>
-            <option value="IS">IS</option>
-            <option value="IT">IT</option>
-            <option value="JM">JM</option>
-            <option value="JO">JO</option>
-            <option value="JP">JP</option>
-            <option value="KE">KE</option>
-            <option value="KR">KR</option>
-            <option value="KW">KW</option>
-            <option value="KZ">KZ</option>
-            <option value="LB">LB</option>
-            <option value="LI">LI</option>
-            <option value="LK">LK</option>
-            <option value="LT">LT</option>
-            <option value="LU">LU</option>
-            <option value="LV">LV</option>
-            <option value="LY">LY</option>
-            <option value="MA">MA</option>
-            <option value="ME">ME</option>
-            <option value="MK">MK</option>
-            <option value="MT">MT</option>
-            <option value="MX">MX</option>
-            <option value="MY">MY</option>
-            <option value="NG">NG</option>
-            <option value="NI">NI</option>
-            <option value="NL">NL</option>
-            <option value="NO">NO</option>
-            <option value="NP">NP</option>
-            <option value="NZ">NZ</option>
-            <option value="OM">OM</option>
-            <option value="PA">PA</option>
-            <option value="PE">PE</option>
-            <option value="PG">PG</option>
-            <option value="PH">PH</option>
-            <option value="PK">PK</option>
-            <option value="PL">PL</option>
-            <option value="PR">PR</option>
-            <option value="PT">PT</option>
-            <option value="PY">PY</option>
-            <option value="QA">QA</option>
-            <option value="RO">RO</option>
-            <option value="RS">RS</option>
-            <option value="RU">RU</option>
-            <option value="SA">SA</option>
-            <option value="SE">SE</option>
-            <option value="SG">SG</option>
-            <option value="SI">SI</option>
-            <option value="SK">SK</option>
-            <option value="SN">SN</option>
-            <option value="SV">SV</option>
-            <option value="TH">TH</option>
-            <option value="TN">TN</option>
-            <option value="TR">TR</option>
-            <option value="TW">TW</option>
-            <option value="TZ">TZ</option>
-            <option value="UA">UA</option>
-            <option value="UG">UG</option>
-            <option value="US">US</option>
-            <option value="UY">UY</option>
-            <option value="VE">VE</option>
-            <option value="VN">VN</option>
-            <option value="YE">YE</option>
-            <option value="ZA">ZA</option>
-            <option value="ZW">ZW</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_playerStyle__">Player Style</h4>
-          <select class="player_style">
-            <option value="invidious" data-localise="__MSG_invidious__">Invidious</option>
-            <option value="youtube" data-localise="__MSG_youtube__">YouTube</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_theme__">Theme</h4>
-          <select class="dark_mode">
-            <option value="">auto</option>
-            <option value="light">light</option>
-            <option value="dark">dark</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_thin_mode__">Thin mode</h4>
-          <input class="thin_mode" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_default_home__">Default homepage</h4>
-          <select class="default_home">
-            <option value="">Search</option>
-            <option value="Popular">Popular</option>
-            <option value="Trending">Trending</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_feedMenu__">Feed menu</h4>
-          <select class="feed_menu[0]">
-            <option value="">Search</option>
-            <option value="Popular">Popular</option>
-            <option value="Trending">Trending</option>
-          </select>&nbsp;
-          <select class="feed_menu[1]">
-            <option value="">Search</option>
-            <option value="Popular">Popular</option>
-            <option value="Trending">Trending</option>
-          </select>
-        </div>
-      </div>
       <hr>
       <div class="normal">
                 <div class="some-block option-block">
@@ -825,323 +151,6 @@
     </div>
     <div id="piped">
       <hr>
-      <div class="custom-settings"> 
-        <hr>
-        <div class="some-block option-block">
-          <h4>
-            <x data-localise="__MSG_volume__">Volume:</x><span class="volume-value">--%</span>
-          </h4>
-          <input class="volume" type="range" min="0" max="100" step="1">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_enableSponsorBlock__">Enable Sponsorblock</h4>
-          <input class="sponsorblock" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipSponsors__">Skip Sponsors</h4>
-          <input class="selectedSkip-sponsor" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipIntermission__">Skip Intermission/Intro Animation</h4>
-          <input class="selectedSkip-intro" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skripEndcars__">Skip Endcards/Credits</h4>
-          <input class="selectedSkip-outro" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skripPreview__">Skip Preview/Recap</h4>
-          <input class="selectedSkip-preview" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipReminder__">Skip Interaction Reminder (Subscribe)</h4>
-          <input class="selectedSkip-interaction" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipUnpaidPromo__">Skip Unpaid/Self Promotion(Subscribe)</h4>
-          <input class="selectedSkip-selfpromo" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipMusic__">Skip Music: Non-Music Section(Subscribe)</h4>
-          <input class="selectedSkip-music_offtopic" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipHighlight__">Skip Highlight(Subscribe)</h4>
-          <input class="selectedSkip-poi_highlight" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipFiller__">Skip Filler Tangent</h4>
-          <input class="selectedSkip-filler" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_theme__">Theme</h4>
-          <select class="ddlTheme">
-            <option value="auto">Auto</option>
-            <option value="dark">Dark</option>
-            <option value="light">Light</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoplayVid__">Autoplay Video</h4>
-          <input class="youtubeAutoplay" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_audioOnly__">Audio Only</h4>
-          <input class="listen" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_defaultQuality__">Default Quality</h4>
-          <select class="quality">
-            <option value="0">Auto</option>
-            <option value="144">144p</option>
-            <option value="240">240p</option>
-            <option value="360">360p</option>
-            <option value="480">480p</option>
-            <option value="720">720p</option>
-            <option value="1080">1080p</option>
-            <option value="1440">1440p</option>
-            <option value="2160">2160p</option>
-            <option value="4320">4320p</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_bufferingGoal__">Buffering Goal (in seconds)</h4>
-          <input class="bufferGoal" type="number" min="10">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_countrySelection__">Country Selection</h4>
-          <select class="region">
-            <option value="AF">Afghanistan</option>
-            <option value="AL">Albania</option>
-            <option value="DZ">Algeria</option>
-            <option value="AD">Andorra</option>
-            <option value="AO">Angola</option>
-            <option value="AG">Antigua and Barbuda</option>
-            <option value="AR">Argentina</option>
-            <option value="AM">Armenia</option>
-            <option value="AU">Australia</option>
-            <option value="AT">Austria</option>
-            <option value="AZ">Azerbaijan</option>
-            <option value="BS">Bahamas</option>
-            <option value="BH">Bahrain</option>
-            <option value="BD">Bangladesh</option>
-            <option value="BB">Barbados</option>
-            <option value="BY">Belarus</option>
-            <option value="BE">Belgium</option>
-            <option value="BZ">Belize</option>
-            <option value="BJ">Benin</option>
-            <option value="BT">Bhutan</option>
-            <option value="BO">Bolivia (Plurinational State of)</option>
-            <option value="BA">Bosnia and Herzegovina</option>
-            <option value="BW">Botswana</option>
-            <option value="BR">Brazil</option>
-            <option value="BN">Brunei Darussalam</option>
-            <option value="BG">Bulgaria</option>
-            <option value="BF">Burkina Faso</option>
-            <option value="BI">Burundi</option>
-            <option value="CV">Cabo Verde</option>
-            <option value="KH">Cambodia</option>
-            <option value="CM">Cameroon</option>
-            <option value="CA">Canada</option>
-            <option value="CF">Central African Republic</option>
-            <option value="TD">Chad</option>
-            <option value="CL">Chile</option>
-            <option value="CN">China</option>
-            <option value="CO">Colombia</option>
-            <option value="KM">Comoros</option>
-            <option value="CG">Congo</option>
-            <option value="CD">Congo, Democratic Republic of the</option>
-            <option value="CR">Costa Rica</option>
-            <option value="CI">Côte d'Ivoire</option>
-            <option value="HR">Croatia</option>
-            <option value="CU">Cuba</option>
-            <option value="CY">Cyprus</option>
-            <option value="CZ">Czechia</option>
-            <option value="DK">Denmark</option>
-            <option value="DJ">Djibouti</option>
-            <option value="DM">Dominica</option>
-            <option value="DO">Dominican Republic</option>
-            <option value="EC">Ecuador</option>
-            <option value="EG">Egypt</option>
-            <option value="SV">El Salvador</option>
-            <option value="GQ">Equatorial Guinea</option>
-            <option value="ER">Eritrea</option>
-            <option value="EE">Estonia</option>
-            <option value="SZ">Eswatini</option>
-            <option value="ET">Ethiopia</option>
-            <option value="FJ">Fiji</option>
-            <option value="FI">Finland</option>
-            <option value="FR">France</option>
-            <option value="GA">Gabon</option>
-            <option value="GM">Gambia</option>
-            <option value="GE">Georgia</option>
-            <option value="DE">Germany</option>
-            <option value="GH">Ghana</option>
-            <option value="GR">Greece</option>
-            <option value="GD">Grenada</option>
-            <option value="GT">Guatemala</option>
-            <option value="GN">Guinea</option>
-            <option value="GW">Guinea-Bissau</option>
-            <option value="GY">Guyana</option>
-            <option value="HT">Haiti</option>
-            <option value="HN">Honduras</option>
-            <option value="HU">Hungary</option>
-            <option value="IS">Iceland</option>
-            <option value="IN">India</option>
-            <option value="ID">Indonesia</option>
-            <option value="IR">Iran (Islamic Republic of)</option>
-            <option value="IQ">Iraq</option>
-            <option value="IE">Ireland</option>
-            <option value="IL">Israel</option>
-            <option value="IT">Italy</option>
-            <option value="JM">Jamaica</option>
-            <option value="JP">Japan</option>
-            <option value="JO">Jordan</option>
-            <option value="KZ">Kazakhstan</option>
-            <option value="KE">Kenya</option>
-            <option value="KI">Kiribati</option>
-            <option value="KP">Korea (Democratic People's Republic of)</option>
-            <option value="KR">Korea, Republic of</option>
-            <option value="KW">Kuwait</option>
-            <option value="KG">Kyrgyzstan</option>
-            <option value="LA">Lao People's Democratic Republic</option>
-            <option value="LV">Latvia</option>
-            <option value="LB">Lebanon</option>
-            <option value="LS">Lesotho</option>
-            <option value="LR">Liberia</option>
-            <option value="LY">Libya</option>
-            <option value="LI">Liechtenstein</option>
-            <option value="LT">Lithuania</option>
-            <option value="LU">Luxembourg</option>
-            <option value="MG">Madagascar</option>
-            <option value="MW">Malawi</option>
-            <option value="MY">Malaysia</option>
-            <option value="MV">Maldives</option>
-            <option value="ML">Mali</option>
-            <option value="MT">Malta</option>
-            <option value="MH">Marshall Islands</option>
-            <option value="MR">Mauritania</option>
-            <option value="MU">Mauritius</option>
-            <option value="MX">Mexico</option>
-            <option value="FM">Micronesia (Federated States of)</option>
-            <option value="MD">Moldova, Republic of</option>
-            <option value="MC">Monaco</option>
-            <option value="MN">Mongolia</option>
-            <option value="ME">Montenegro</option>
-            <option value="MA">Morocco</option>
-            <option value="MZ">Mozambique</option>
-            <option value="MM">Myanmar</option>
-            <option value="NA">Namibia</option>
-            <option value="NR">Nauru</option>
-            <option value="NP">Nepal</option>
-            <option value="NL">Netherlands</option>
-            <option value="NZ">New Zealand</option>
-            <option value="NI">Nicaragua</option>
-            <option value="NE">Niger</option>
-            <option value="NG">Nigeria</option>
-            <option value="MK">North Macedonia</option>
-            <option value="NO">Norway</option>
-            <option value="OM">Oman</option>
-            <option value="PK">Pakistan</option>
-            <option value="PW">Palau</option>
-            <option value="PA">Panama</option>
-            <option value="PG">Papua New Guinea</option>
-            <option value="PY">Paraguay</option>
-            <option value="PE">Peru</option>
-            <option value="PH">Philippines</option>
-            <option value="PL">Poland</option>
-            <option value="PT">Portugal</option>
-            <option value="QA">Qatar</option>
-            <option value="RO">Romania</option>
-            <option value="RU">Russian Federation</option>
-            <option value="RW">Rwanda</option>
-            <option value="KN">Saint Kitts and Nevis</option>
-            <option value="LC">Saint Lucia</option>
-            <option value="VC">Saint Vincent and the Grenadines</option>
-            <option value="WS">Samoa</option>
-            <option value="SM">San Marino</option>
-            <option value="ST">Sao Tome and Principe</option>
-            <option value="SA">Saudi Arabia</option>
-            <option value="SN">Senegal</option>
-            <option value="RS">Serbia</option>
-            <option value="SC">Seychelles</option>
-            <option value="SL">Sierra Leone</option>
-            <option value="SG">Singapore</option>
-            <option value="SK">Slovakia</option>
-            <option value="SI">Slovenia</option>
-            <option value="SB">Solomon Islands</option>
-            <option value="SO">Somalia</option>
-            <option value="ZA">South Africa</option>
-            <option value="SS">South Sudan</option>
-            <option value="ES">Spain</option>
-            <option value="LK">Sri Lanka</option>
-            <option value="SD">Sudan</option>
-            <option value="SR">Suriname</option>
-            <option value="SE">Sweden</option>
-            <option value="CH">Switzerland</option>
-            <option value="SY">Syrian Arab Republic</option>
-            <option value="TJ">Tajikistan</option>
-            <option value="TZ">Tanzania, United Republic of</option>
-            <option value="TH">Thailand</option>
-            <option value="TL">Timor-Leste</option>
-            <option value="TG">Togo</option>
-            <option value="TO">Tonga</option>
-            <option value="TT">Trinidad and Tobago</option>
-            <option value="TN">Tunisia</option>
-            <option value="TR">Turkey</option>
-            <option value="TM">Turkmenistan</option>
-            <option value="TV">Tuvalu</option>
-            <option value="UG">Uganda</option>
-            <option value="UA">Ukraine</option>
-            <option value="AE">United Arab Emirates</option>
-            <option value="GB">United Kingdom of Great Britain and Northern Ireland</option>
-            <option value="US">United States of America</option>
-            <option value="UY">Uruguay</option>
-            <option value="UZ">Uzbekistan</option>
-            <option value="VU">Vanuatu</option>
-            <option value="VE">Venezuela (Bolivarian Republic of)</option>
-            <option value="VN">Viet Nam</option>
-            <option value="YE">Yemen</option>
-            <option value="ZM">Zambia</option>
-            <option value="ZW">Zimbabwe</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_defaultHomepage__">Default Homepage</h4>
-          <select class="homepage">
-            <option value="trending" data-localise="__MSG_trending__">Trending</option>
-            <option value="feed" data-localise="__MSG_feed__">Feed</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_showComments__">Show Comments</h4>
-          <input class="comments" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_minimizeDesc__">Minimize Description by default</h4>
-          <input class="minimizeDescription" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_storeHistory__">Store Watch History</h4>
-          <input class="watchHistory" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_enabledCodecs__">Enabled Codecs (Multiple)</h4>
-          <select class="enabledCodecs">
-            <option value="av1">AV1</option>
-            <option value="vp9">VP9</option>
-            <option value="avc">AVC (h.264)</option>
-          </select>
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_disableLBRY__">Disable LBRY for Streaming</h4>
-          <input class="disableLBRY" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_enableProxyLBRY__">Enable Proxy for LBRY</h4>
-          <input class="proxyLBRY" type="checkbox">
-        </div>
-      </div>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
@@ -1194,67 +203,6 @@
     </div>
     <div id="pipedMaterial">
       <hr>
-      <div class="custom-settings">
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_autoplayVid__">Autoplay Video</h4>
-          <input class="youtubeAutoplay" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4>
-            <x data-localise="__MSG_volume__">Volume:</x><span class="volume-value">--%</span>
-          </h4>
-          <input class="volume" type="range" min="0" max="100" step="1">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_audioOnly__">Audio Only</h4>
-          <input class="listen" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_disableLBRY__">Disable LBRY</h4>
-          <input class="disableLBRY" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_proxyLBRY__">Proxy LBRY videos</h4>
-          <input class="proxyLBRY" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_enableSponsorBlock__">Enable Sponsorblock</h4>
-          <input class="sponsorblock" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipNote__">Skip to the last watched point when encountering a video already seen</h4>
-          <input class="skipToLastPoint" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipSponsors__">Skip Sponsors</h4>
-          <input class="selectedSkip-sponsor" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipIntermission__">Skip Intermission/Intro Animation</h4>
-          <input class="selectedSkip-intro" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skripEndcars__">Skip Endcards/Credits</h4>
-          <input class="selectedSkip-outro" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skripPreview__">Skip Preview/Recap</h4>
-          <input class="selectedSkip-preview" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipReminder__">Skip Interaction Reminder (Subscribe)</h4>
-          <input class="selectedSkip-interaction" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipUnpaidPromo__">Skip Unpaid/Self Promotion</h4>
-          <input class="selectedSkip-selfpromo" type="checkbox">
-        </div>
-        <div class="some-block option-block">
-          <h4 data-localise="__MSG_skipMusic__">Skip Music: Non-Music Section</h4>
-          <input class="selectedSkip-music_offtopic" type="checkbox">
-        </div>
-        <hr>
-      </div>
       <div class="normal">
                 <div class="some-block option-block">
                   <h4 data-localise="__MSG_defaultInstances__">Default Instances</h4>
diff --git a/src/pages/options/youtube/youtube.js b/src/pages/options/youtube/youtube.js
index 71ae4777..07d9ba1d 100644
--- a/src/pages/options/youtube/youtube.js
+++ b/src/pages/options/youtube/youtube.js
@@ -1,79 +1,80 @@
 import youtubeHelper from "../../../assets/javascripts/helpers/youtube/youtube.js";
-
-let disableYoutubeElement = document.getElementById("disable-invidious");
-let youtubeFrontendElement = document.getElementById("youtube-frontend");
-let invidiousDivElement = document.getElementById("invidious");
-let pipedDivElement = document.getElementById("piped");
-let pipedMaterialDivElement = document.getElementById("pipedMaterial");
-let freetubeYatteeDivElement = document.getElementById("freetube-yatte");
-let customSettingsDivElement = document.getElementsByClassName("custom-settings");
-let youtubeEmbedFrontendElement = document.getElementById("youtube-embed-frontend");
-let enableYoutubeCustomSettingsElement = document.getElementById("enable-youtube-custom-settings");
-let OnlyEmbeddedVideoElement = document.getElementById("only-embed");
-let bypassWatchOnYoutubeElement = document.getElementById("bypass-watch-on-youtube");
-let protocolElement = document.getElementById("protocol");
+import commonHelper from "../../../assets/javascripts/helpers/common.js";
+
+let disableYoutube = document.getElementById("disable-invidious");
+let youtubeFrontend = document.getElementById("youtube-frontend");
+let invidiousDiv = document.getElementById("invidious");
+let pipedDiv = document.getElementById("piped");
+let pipedMaterialDiv = document.getElementById("pipedMaterial");
+let freetubeYatteeDiv = document.getElementById("freetube-yatte");
+let youtubeEmbedFrontend = document.getElementById("youtube-embed-frontend");
+let OnlyEmbeddedVideo = document.getElementById("only-embed");
+let protoco = document.getElementById("protocol");
 
 function changeFrontendsSettings() {
-    let frontend = youtubeFrontendElement.value;
-
-    if (enableYoutubeCustomSettingsElement.checked)
-        for (const item of customSettingsDivElement) item.style.display = 'block';
-    else
-        for (const item of customSettingsDivElement) item.style.display = 'none';
+    let frontend = youtubeFrontend.value;
 
     if (frontend == 'invidious') {
-        invidiousDivElement.style.display = 'block';
-        pipedDivElement.style.display = 'none';
-        pipedMaterialDivElement.style.display = 'none';
-        freetubeYatteeDivElement.style.display = 'none';
+        invidiousDiv.style.display = 'block';
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'none';
+        freetubeYatteeDiv.style.display = 'none';
     }
     else if (frontend == 'piped') {
-        invidiousDivElement.style.display = 'none';
-        pipedDivElement.style.display = 'block';
-        pipedMaterialDivElement.style.display = 'none';
-        freetubeYatteeDivElement.style.display = 'none';
+        invidiousDiv.style.display = 'none';
+        pipedDiv.style.display = 'block';
+        pipedMaterialDiv.style.display = 'none';
+        freetubeYatteeDiv.style.display = 'none';
     }
     else if (frontend == 'pipedMaterial') {
-        invidiousDivElement.style.display = 'none';
-        pipedDivElement.style.display = 'none';
-        pipedMaterialDivElement.style.display = 'block';
-        freetubeYatteeDivElement.style.display = 'none';
+        invidiousDiv.style.display = 'none';
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'block';
+        freetubeYatteeDiv.style.display = 'none';
     }
     else if (frontend == 'freetube' || frontend == 'yatte') {
-        invidiousDivElement.style.display = 'none';
-        pipedDivElement.style.display = 'none';
-        pipedMaterialDivElement.style.display = 'none';
-        freetubeYatteeDivElement.style.display = 'block';
-        changeYoutubeEmbedFrontendsSettings(youtubeHelper.getYoutubeEmbedFrontend());
+        invidiousDiv.style.display = 'none';
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'none';
+        freetubeYatteeDiv.style.display = 'block';
+        changeYoutubeEmbedFrontendsSettings();
     }
 }
 
-function changeYoutubeEmbedFrontendsSettings(youtubeEmbedFrontend) {
-    if (youtubeEmbedFrontend == 'invidious') {
-        pipedDivElement.style.display = 'none';
-        invidiousDivElement.style.display = 'block';
+function changeYoutubeEmbedFrontendsSettings() {
+    if (youtubeEmbedFrontend.value == 'invidious') {
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'none';
+        invidiousDiv.style.display = 'block';
+    }
+    if (youtubeEmbedFrontend.value == 'piped') {
+        pipedDiv.style.display = 'block';
+        pipedMaterialDiv.style.display = 'none';
+        invidiousDiv.style.display = 'none';
     }
-    if (youtubeEmbedFrontend == 'piped') {
-        pipedDivElement.style.display = 'block';
-        invidiousDivElement.style.display = 'none';
+    if (youtubeEmbedFrontend.value == 'pipedMaterial') {
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'block';
+        invidiousDiv.style.display = 'none';
     }
-    else if (youtubeEmbedFrontend == 'youtube') {
-        pipedDivElement.style.display = 'none';
-        invidiousDivElement.style.display = 'none';
+    else if (youtubeEmbedFrontend.value == 'youtube') {
+        pipedDiv.style.display = 'none';
+        pipedMaterialDiv.style.display = 'none';
+        invidiousDiv.style.display = 'none';
     }
 }
 
-function changeProtocolSettings(protocol) {
-    let normalPipedDiv = document.getElementById('piped').getElementsByClassName("normal")[0];
-    let torPipedDiv = document.getElementById('piped').getElementsByClassName("tor")[0];
+function changeProtocolSettings() {
+    const normalPipedDiv = document.getElementById('piped').getElementsByClassName("normal")[0];
+    const torPipedDiv = document.getElementById('piped').getElementsByClassName("tor")[0];
 
-    let normalPipedMaterialDiv = document.getElementById('pipedMaterial').getElementsByClassName("normal")[0];
-    let torPipedMaterialDiv = document.getElementById('pipedMaterial').getElementsByClassName("tor")[0];
+    const normalPipedMaterialDiv = document.getElementById('pipedMaterial').getElementsByClassName("normal")[0];
+    const torPipedMaterialDiv = document.getElementById('pipedMaterial').getElementsByClassName("tor")[0];
 
-    let normalInvidiousDiv = document.getElementById('invidious').getElementsByClassName("normal")[0];
-    let torInvidiousDiv = document.getElementById('invidious').getElementsByClassName("tor")[0];
+    const normalInvidiousDiv = document.getElementById('invidious').getElementsByClassName("normal")[0];
+    const torInvidiousDiv = document.getElementById('invidious').getElementsByClassName("tor")[0];
 
-    if (protocol == 'normal') {
+    if (protoco.value == 'normal') {
         normalInvidiousDiv.style.display = 'block';
         torInvidiousDiv.style.display = 'none';
 
@@ -83,7 +84,7 @@ function changeProtocolSettings(protocol) {
         normalPipedMaterialDiv.style.display = 'block';
         torPipedMaterialDiv.style.display = 'none';
     }
-    else if (protocol == 'tor') {
+    else if (protoco.value == 'tor') {
         normalInvidiousDiv.style.display = 'none';
         torInvidiousDiv.style.display = 'block';
 
@@ -97,56 +98,118 @@ function changeProtocolSettings(protocol) {
 
 document.addEventListener("change", async () => {
     await browser.storage.local.set({
-        disableYoutube: !disableYoutubeElement.checked,
-        youtubeFrontend: youtubeFrontendElement.value,
-        youtubeEmbedFrontend: youtubeEmbedFrontendElement.value,
-        enableYoutubeCustomSettings: enableYoutubeCustomSettingsElement.checked,
-        OnlyEmbeddedVideo: OnlyEmbeddedVideoElement.value,
-        bypassWatchOnYoutube: bypassWatchOnYoutubeElement.checked,
-        youtubeProtocol: protocolElement.value,
+        disableYoutube: !disableYoutube.checked,
+        youtubeFrontend: youtubeFrontend.value,
+        youtubeEmbedFrontend: youtubeEmbedFrontend.value,
+        OnlyEmbeddedVideo: OnlyEmbeddedVideo.value,
+        youtubeProtocol: protoco.value,
     })
-    changeYoutubeEmbedFrontendsSettings(youtubeEmbedFrontendElement.value);
-    changeProtocolSettings(protocolElement.value);
+    changeProtocolSettings();
+    changeYoutubeEmbedFrontendsSettings();
     changeFrontendsSettings();
 })
 
 browser.storage.local.get(
     [
         "disableYoutube",
-        "enableYoutubeCustomSettings",
         "OnlyEmbeddedVideo",
         "youtubeRedirects",
         "youtubeFrontend",
 
-        "alwaysUsePreferred",
         "youtubeEmbedFrontend",
         "youtubeProtocol",
-        "bypassWatchOnYoutube",
     ],
     r => {
-        disableYoutubeElement.checked = !r.disableYoutube;
-        enableYoutubeCustomSettingsElement.checked = r.enableYoutubeCustomSettings;
+        disableYoutube.checked = !r.disableYoutube;
+        OnlyEmbeddedVideo.value = r.OnlyEmbeddedVideo;
+        youtubeFrontend.value = r.youtubeFrontend;
+        protoco.value = r.youtubeProtocol;
 
-        OnlyEmbeddedVideoElement.value = r.OnlyEmbeddedVideo;
-        bypassWatchOnYoutubeElement.checked = r.bypassWatchOnYoutube;
-
-        let frontend = r.youtubeFrontend;
-        youtubeFrontendElement.value = frontend;
         changeFrontendsSettings();
+        changeProtocolSettings();
 
-        let protocol = r.youtubeProtocol;
-        protocolElement.value = protocol;
-        changeProtocolSettings(protocol);
+        youtubeEmbedFrontend.value = youtubeEmbedFrontend.value
+        if (r.youtubeFrontend == "freetube" || r.youtubeFrontend == "yatte") changeYoutubeEmbedFrontendsSettings()
+    }
+);
 
-        let youtubeEmbedFrontend = r.youtubeEmbedFrontend;
-        youtubeEmbedFrontendElement.value = youtubeEmbedFrontend
-        if (frontend == "freetube" || frontend == "yatte") {
-            changeYoutubeEmbedFrontendsSettings(youtubeEmbedFrontend)
-        };
+const invidiousForm = invidiousDiv.getElementsByTagName('form')[0];
+const invidiousCookies = invidiousForm.getElementsByTagName('input')[0];
+invidiousForm.addEventListener('submit', async event => {
+    event.preventDefault();
+    const url = new URL(invidiousCookies.value);
+    youtubeHelper.initInvidiousCookies(url);
+});
+
+// const pipedForm = pipedDiv.getElementsByTagName('form')[0];
+// const pipedCookies = pipedForm.getElementsByTagName('input')[0];
+// pipedForm.addEventListener('submit', async event => {
+//     event.preventDefault();
+//     const url = new URL(pipedCookies.value);
+//     youtubeHelper.initPipedLocalStorage(url);
+// });
+
+commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document);
+commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'tor', document);
+commonHelper.processDefaultCustomInstances('youtube', 'pipedMaterial', 'normal', document);
+commonHelper.processDefaultCustomInstances('youtube', 'pipedMaterial', 'tor', document);
+commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document);
+commonHelper.processDefaultCustomInstances('youtube', 'piped', 'tor', document);
+
+
+let latencyInvidiousElement = document.getElementById("latency-invidious");
+let latencyInvidiousLabel = document.getElementById("latency-invidious-label");
+latencyInvidiousElement.addEventListener("click",
+    async () => {
+        let reloadWindow = () => location.reload();
+        latencyInvidiousElement.addEventListener("click", reloadWindow);
+        await youtubeHelper.init();
+        let redirects = youtubeHelper.getRedirects();
+        const oldHtml = latencyInvidiousLabel.innerHTML;
+        latencyInvidiousLabel.innerHTML = '...';
+        commonHelper.testLatency(latencyInvidiousLabel, redirects.invidious.normal).then(r => {
+            browser.storage.local.set({ invidiousLatency: r });
+            latencyInvidiousLabel.innerHTML = oldHtml;
+            commonHelper.processDefaultCustomInstances('youtube', 'invidious', 'normal', document);
+            latencyInvidiousElement.removeEventListener("click", reloadWindow);
+        });
     }
 );
 
+let latencyPipedMaterialElement = document.getElementById("latency-pipedMaterial");
+let latencyPipedMaterialLabel = document.getElementById("latency-pipedMaterial-label");
+latencyPipedMaterialElement.addEventListener("click",
+    async () => {
+        let reloadWindow = () => location.reload();
+        latencyPipedMaterialElement.addEventListener("click", reloadWindow);
+        await youtubeHelper.init();
+        let redirects = youtubeHelper.getRedirects();
+        const oldHtml = latencyPipedMaterialLabel.innerHTML;
+        latencyPipedMaterialLabel.innerHTML = '...';
+        commonHelper.testLatency(latencyPipedMaterialLabel, redirects.pipedMaterial.normal).then(r => {
+            browser.storage.local.set({ pipedMaterialLatency: r });
+            latencyPipedMaterialLabel.innerHTML = oldHtml;
+            commonHelper.processDefaultCustomInstances('youtube', 'pipedMaterial', 'normal', document);
+            latencyPipedMaterialElement.removeEventListener("click", reloadWindow);
+        });
+    }
+);
 
-window.onblur = () => {
-    youtubeHelper.initInvidiousCookies();
-}
\ No newline at end of file
+let latencyPipedElement = document.getElementById("latency-piped");
+let latencyPipedLabel = document.getElementById("latency-piped-label");
+latencyPipedElement.addEventListener("click",
+    async () => {
+        let reloadWindow = () => location.reload();
+        latencyPipedElement.addEventListener("click", reloadWindow);
+        await youtubeHelper.init();
+        let redirects = youtubeHelper.getRedirects();
+        const oldHtml = latencyPipedLabel.innerHTML;
+        latencyPipedLabel.innerHTML = '...';
+        commonHelper.testLatency(latencyPipedLabel, redirects.piped.normal).then(r => {
+            browser.storage.local.set({ pipedLatency: r });
+            latencyPipedLabel.innerHTML = oldHtml;
+            commonHelper.processDefaultCustomInstances('youtube', 'piped', 'normal', document);
+            latencyPipedElement.removeEventListener("click", reloadWindow);
+        });
+    }
+);
diff --git a/src/pages/options/youtube/youtube.pug b/src/pages/options/youtube/youtube.pug
index be88aac8..45c7f173 100644
--- a/src/pages/options/youtube/youtube.pug
+++ b/src/pages/options/youtube/youtube.pug
@@ -21,8 +21,6 @@ body.option(dir="auto")
                 option(value="freetube") FreeTube
                 option(value="yatte") Yattee
 
-        hr
-
         #freetube-yatte
             .some-block.option-block
                 h4(data-localise="__MSG_embeddedVids__") Embedded Videos Frontend
@@ -31,7 +29,6 @@ body.option(dir="auto")
                     option(value="piped") Piped
                     option(value="pipedMaterial") Piped-Material
                     option(value="youtube") Youtube
-            hr
 
         #invidious-piped-pipedMaterial
             .some-block.option-block
@@ -47,278 +44,7 @@ body.option(dir="auto")
                     option(value="onlyEmbedded" data-localise="__MSG_onlyEmbedded__") Only Embedded
                     option(value="onlyNotEmbedded" data-localise="__MSG_onlyNotEmbedded__") Only Not Embedded
 
-            .some-block.option-block
-                h4(data-localise="__MSG_bypassYoutube__") Bypass "Watch On YouTube"
-                input#bypass-watch-on-youtube(type="checkbox")
-
-            .some-block.option-block
-                h4(data-localise="__MSG_enableCustom__") Enable Custom Settings (will use cookies and localStorage)
-                input#enable-youtube-custom-settings(type="checkbox")
-
         #invidious
-            .custom-settings
-                hr
-                .some-block.option-block
-                    h4(data-localise="__MSG_alwaysLoop__") Always loop
-                    input.video_loop(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoplayVid__") Autoplay Video
-                    input.youtubeAutoplay(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_playNext__") Play next by default
-                    input.continue(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoplayNext__") Autoplay next video
-                    input.continue_autoplay(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_alwaysProxy__") Always proxy videos
-                    input.local(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_listenByDefault__") Listen by default
-                    input.listen(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_defaultSpeed__") Default speed
-                    select.speed
-                        option 2.0
-                        option 1.75
-                        option 1.5
-                        option 1.25
-                        option 1.0
-                        option 0.75
-                        option 0.5
-                        option 0.25
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_prefQuality__") Preferred video quality
-                    select.quality
-                        option(value="hd720") 720p
-                        option(value="medium") 480p
-                        option(value="dash" data-localise="__MSG_dash__") DASH (adaptive quality)
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_prefDashQuality__") Preferred DASH video quality
-                    select.quality_dash
-                        option(value="auto" data-localise="__MSG_auto__") Auto
-                        option(value="best" data-localise="__MSG_best__") Best
-                        option(value="4320p") 4320p
-                        option(value="2160p") 2160p
-                        option(value="1440p") 1440p
-                        option(value="1080p") 1080p
-                        option(value="720p") 720p
-                        option(value="480p") 480p
-                        option(value="360p") 360p
-                        option(value="240p") 240p
-                        option(value="144p") 144p
-                        option(value="worst" data-localise="__MSG_worst__") Worst
-
-                .some-block.option-block
-                    h4
-                        x(data-localise="__MSG_volume__") Volume:
-                        span.volume-value --%
-                    input.volume(type="range" min="0" max="100" step="1")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_defaultComments__") Default comments
-                    select(class="comments[0]")
-                        option(value="" data-localise="__MSG_none__") none
-                        option(value="youtube") YouTube
-                        option(value="reddit") Reddit
-                .some-block.option-block
-                    h4 
-                    select(class="comments[1]")
-                        option(value="" data-localise="__MSG_none__") none
-                        option(value="youtube") YouTube
-                        option(value="reddit") Reddit
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_defaultCaptions__") Default captions
-                    select(class="captions[0]")
-                        include ../../widgets/captions_options.pug
-
-                .some-block.option-block
-                    h4
-                    select(class="captions[1]")
-                        include ../../widgets/captions_options.pug
-
-                .some-block.option-block
-                    h4
-                    select(class="captions[2]")
-                        include ../../widgets/captions_options.pug
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_showRelated__") Show related videos
-                    input.related_videos(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_showAnnotations__") Show annotations by default
-                    input.annotations(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoExtendDesc__") Automatically extend video description
-                    input.extend_desc(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_interactive360__") Interactive 360 degree videos (requires WebGL)
-                    input.vr_mode(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_savePlaybackPos__") Save playback position
-                    input.save_player_pos(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_region__") Select country
-                    select.region
-                        option(value="AE") AE
-                        option(value="AR") AR
-                        option(value="AT") AT
-                        option(value="AU") AU
-                        option(value="AZ") AZ
-                        option(value="BA") BA
-                        option(value="BD") BD
-                        option(value="BE") BE
-                        option(value="BG") BG
-                        option(value="BH") BH
-                        option(value="BO") BO
-                        option(value="BR") BR
-                        option(value="BY") BY
-                        option(value="CA") CA
-                        option(value="CH") CH
-                        option(value="CL") CL
-                        option(value="CO") CO
-                        option(value="CR") CR
-                        option(value="CY") CY
-                        option(value="CZ") CZ
-                        option(value="DE") DE
-                        option(value="DK") DK
-                        option(value="DO") DO
-                        option(value="DZ") DZ
-                        option(value="EC") EC
-                        option(value="EE") EE
-                        option(value="EG") EG
-                        option(value="ES") ES
-                        option(value="FI") FI
-                        option(value="FR") FR
-                        option(value="GB") GB
-                        option(value="GE") GE
-                        option(value="GH") GH
-                        option(value="GR") GR
-                        option(value="GT") GT
-                        option(value="HK") HK
-                        option(value="HN") HN
-                        option(value="HR") HR
-                        option(value="HU") HU
-                        option(value="ID") ID
-                        option(value="IE") IE
-                        option(value="IL") IL
-                        option(value="IN") IN
-                        option(value="IQ") IQ
-                        option(value="IS") IS
-                        option(value="IT") IT
-                        option(value="JM") JM
-                        option(value="JO") JO
-                        option(value="JP") JP
-                        option(value="KE") KE
-                        option(value="KR") KR
-                        option(value="KW") KW
-                        option(value="KZ") KZ
-                        option(value="LB") LB
-                        option(value="LI") LI
-                        option(value="LK") LK
-                        option(value="LT") LT
-                        option(value="LU") LU
-                        option(value="LV") LV
-                        option(value="LY") LY
-                        option(value="MA") MA
-                        option(value="ME") ME
-                        option(value="MK") MK
-                        option(value="MT") MT
-                        option(value="MX") MX
-                        option(value="MY") MY
-                        option(value="NG") NG
-                        option(value="NI") NI
-                        option(value="NL") NL
-                        option(value="NO") NO
-                        option(value="NP") NP
-                        option(value="NZ") NZ
-                        option(value="OM") OM
-                        option(value="PA") PA
-                        option(value="PE") PE
-                        option(value="PG") PG
-                        option(value="PH") PH
-                        option(value="PK") PK
-                        option(value="PL") PL
-                        option(value="PR") PR
-                        option(value="PT") PT
-                        option(value="PY") PY
-                        option(value="QA") QA
-                        option(value="RO") RO
-                        option(value="RS") RS
-                        option(value="RU") RU
-                        option(value="SA") SA
-                        option(value="SE") SE
-                        option(value="SG") SG
-                        option(value="SI") SI
-                        option(value="SK") SK
-                        option(value="SN") SN
-                        option(value="SV") SV
-                        option(value="TH") TH
-                        option(value="TN") TN
-                        option(value="TR") TR
-                        option(value="TW") TW
-                        option(value="TZ") TZ
-                        option(value="UA") UA
-                        option(value="UG") UG
-                        option(value="US") US
-                        option(value="UY") UY
-                        option(value="VE") VE
-                        option(value="VN") VN
-                        option(value="YE") YE
-                        option(value="ZA") ZA
-                        option(value="ZW") ZW
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_playerStyle__") Player Style
-                    select.player_style
-                        option(value="invidious" data-localise="__MSG_invidious__") Invidious
-                        option(value="youtube" data-localise="__MSG_youtube__") YouTube
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_theme__") Theme
-                    select.dark_mode
-                        option(value="") auto
-                        option(value="light") light
-                        option(value="dark") dark
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_thin_mode__") Thin mode
-                    input.thin_mode(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_default_home__") Default homepage
-                    select.default_home
-                        option(value="") Search
-                        option(value="Popular") Popular
-                        option(value="Trending") Trending
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_feedMenu__") Feed menu
-                    select(class="feed_menu[0]")
-                        option(value="") Search
-                        option(value="Popular") Popular
-                        option(value="Trending") Trending
-
-                    |&nbsp;
-
-                    select(class="feed_menu[1]")
-                        option(value="") Search
-                        option(value="Popular") Popular
-                        option(value="Trending") Trending
             hr
             .normal
                 include ../../widgets/instances.pug
@@ -331,318 +57,6 @@ body.option(dir="auto")
 
         #piped
             hr
-            .custom-settings 
-                hr
-                .some-block.option-block
-                    h4
-                        x(data-localise="__MSG_volume__") Volume:
-                        span.volume-value --%
-                    input.volume(type="range" min="0" max="100" step="1")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_enableSponsorBlock__") Enable Sponsorblock
-                    input.sponsorblock(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipSponsors__") Skip Sponsors
-                    input.selectedSkip-sponsor(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipIntermission__") Skip Intermission/Intro Animation
-                    input.selectedSkip-intro(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skripEndcars__") Skip Endcards/Credits
-                    input.selectedSkip-outro(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skripPreview__") Skip Preview/Recap
-                    input.selectedSkip-preview(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipReminder__") Skip Interaction Reminder (Subscribe)
-                    input.selectedSkip-interaction(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipUnpaidPromo__") Skip Unpaid/Self Promotion(Subscribe)
-                    input.selectedSkip-selfpromo(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipMusic__") Skip Music: Non-Music Section(Subscribe)
-                    input.selectedSkip-music_offtopic(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipHighlight__") Skip Highlight(Subscribe)
-                    input.selectedSkip-poi_highlight(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipFiller__") Skip Filler Tangent
-                    input.selectedSkip-filler(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_theme__") Theme
-                    select.ddlTheme
-                        option(value="auto") Auto
-                        option(value="dark") Dark
-                        option(value="light") Light
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoplayVid__") Autoplay Video
-                    input.youtubeAutoplay(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_audioOnly__") Audio Only
-                    input.listen(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_defaultQuality__") Default Quality
-                    select.quality
-                        option(value="0") Auto
-                        option(value="144") 144p
-                        option(value="240") 240p
-                        option(value="360") 360p
-                        option(value="480") 480p
-                        option(value="720") 720p
-                        option(value="1080") 1080p
-                        option(value="1440") 1440p
-                        option(value="2160") 2160p
-                        option(value="4320") 4320p
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_bufferingGoal__") Buffering Goal (in seconds)
-                    input.bufferGoal(type="number" min="10")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_countrySelection__") Country Selection
-                    select.region
-                        option(value="AF") Afghanistan
-                        option(value="AL") Albania
-                        option(value="DZ") Algeria
-                        option(value="AD") Andorra
-                        option(value="AO") Angola
-                        option(value="AG") Antigua and Barbuda
-                        option(value="AR") Argentina
-                        option(value="AM") Armenia
-                        option(value="AU") Australia
-                        option(value="AT") Austria
-                        option(value="AZ") Azerbaijan
-                        option(value="BS") Bahamas
-                        option(value="BH") Bahrain
-                        option(value="BD") Bangladesh
-                        option(value="BB") Barbados
-                        option(value="BY") Belarus
-                        option(value="BE") Belgium
-                        option(value="BZ") Belize
-                        option(value="BJ") Benin
-                        option(value="BT") Bhutan
-                        option(value="BO") Bolivia (Plurinational State of)
-                        option(value="BA") Bosnia and Herzegovina
-                        option(value="BW") Botswana
-                        option(value="BR") Brazil
-                        option(value="BN") Brunei Darussalam
-                        option(value="BG") Bulgaria
-                        option(value="BF") Burkina Faso
-                        option(value="BI") Burundi
-                        option(value="CV") Cabo Verde
-                        option(value="KH") Cambodia
-                        option(value="CM") Cameroon
-                        option(value="CA") Canada
-                        option(value="CF") Central African Republic
-                        option(value="TD") Chad
-                        option(value="CL") Chile
-                        option(value="CN") China
-                        option(value="CO") Colombia
-                        option(value="KM") Comoros
-                        option(value="CG") Congo
-                        option(value="CD") Congo, Democratic Republic of the
-                        option(value="CR") Costa Rica
-                        option(value="CI") Côte d'Ivoire
-                        option(value="HR") Croatia
-                        option(value="CU") Cuba
-                        option(value="CY") Cyprus
-                        option(value="CZ") Czechia
-                        option(value="DK") Denmark
-                        option(value="DJ") Djibouti
-                        option(value="DM") Dominica
-                        option(value="DO") Dominican Republic
-                        option(value="EC") Ecuador
-                        option(value="EG") Egypt
-                        option(value="SV") El Salvador
-                        option(value="GQ") Equatorial Guinea
-                        option(value="ER") Eritrea
-                        option(value="EE") Estonia
-                        option(value="SZ") Eswatini
-                        option(value="ET") Ethiopia
-                        option(value="FJ") Fiji
-                        option(value="FI") Finland
-                        option(value="FR") France
-                        option(value="GA") Gabon
-                        option(value="GM") Gambia
-                        option(value="GE") Georgia
-                        option(value="DE") Germany
-                        option(value="GH") Ghana
-                        option(value="GR") Greece
-                        option(value="GD") Grenada
-                        option(value="GT") Guatemala
-                        option(value="GN") Guinea
-                        option(value="GW") Guinea-Bissau
-                        option(value="GY") Guyana
-                        option(value="HT") Haiti
-                        option(value="HN") Honduras
-                        option(value="HU") Hungary
-                        option(value="IS") Iceland
-                        option(value="IN") India
-                        option(value="ID") Indonesia
-                        option(value="IR") Iran (Islamic Republic of)
-                        option(value="IQ") Iraq
-                        option(value="IE") Ireland
-                        option(value="IL") Israel
-                        option(value="IT") Italy
-                        option(value="JM") Jamaica
-                        option(value="JP") Japan
-                        option(value="JO") Jordan
-                        option(value="KZ") Kazakhstan
-                        option(value="KE") Kenya
-                        option(value="KI") Kiribati
-                        option(value="KP") Korea (Democratic People's Republic of)
-                        option(value="KR") Korea, Republic of
-                        option(value="KW") Kuwait
-                        option(value="KG") Kyrgyzstan
-                        option(value="LA") Lao People's Democratic Republic
-                        option(value="LV") Latvia
-                        option(value="LB") Lebanon
-                        option(value="LS") Lesotho
-                        option(value="LR") Liberia
-                        option(value="LY") Libya
-                        option(value="LI") Liechtenstein
-                        option(value="LT") Lithuania
-                        option(value="LU") Luxembourg
-                        option(value="MG") Madagascar
-                        option(value="MW") Malawi
-                        option(value="MY") Malaysia
-                        option(value="MV") Maldives
-                        option(value="ML") Mali
-                        option(value="MT") Malta
-                        option(value="MH") Marshall Islands
-                        option(value="MR") Mauritania
-                        option(value="MU") Mauritius
-                        option(value="MX") Mexico
-                        option(value="FM") Micronesia (Federated States of)
-                        option(value="MD") Moldova, Republic of
-                        option(value="MC") Monaco
-                        option(value="MN") Mongolia
-                        option(value="ME") Montenegro
-                        option(value="MA") Morocco
-                        option(value="MZ") Mozambique
-                        option(value="MM") Myanmar
-                        option(value="NA") Namibia
-                        option(value="NR") Nauru
-                        option(value="NP") Nepal
-                        option(value="NL") Netherlands
-                        option(value="NZ") New Zealand
-                        option(value="NI") Nicaragua
-                        option(value="NE") Niger
-                        option(value="NG") Nigeria
-                        option(value="MK") North Macedonia
-                        option(value="NO") Norway
-                        option(value="OM") Oman
-                        option(value="PK") Pakistan
-                        option(value="PW") Palau
-                        option(value="PA") Panama
-                        option(value="PG") Papua New Guinea
-                        option(value="PY") Paraguay
-                        option(value="PE") Peru
-                        option(value="PH") Philippines
-                        option(value="PL") Poland
-                        option(value="PT") Portugal
-                        option(value="QA") Qatar
-                        option(value="RO") Romania
-                        option(value="RU") Russian Federation
-                        option(value="RW") Rwanda
-                        option(value="KN") Saint Kitts and Nevis
-                        option(value="LC") Saint Lucia
-                        option(value="VC") Saint Vincent and the Grenadines
-                        option(value="WS") Samoa
-                        option(value="SM") San Marino
-                        option(value="ST") Sao Tome and Principe
-                        option(value="SA") Saudi Arabia
-                        option(value="SN") Senegal
-                        option(value="RS") Serbia
-                        option(value="SC") Seychelles
-                        option(value="SL") Sierra Leone
-                        option(value="SG") Singapore
-                        option(value="SK") Slovakia
-                        option(value="SI") Slovenia
-                        option(value="SB") Solomon Islands
-                        option(value="SO") Somalia
-                        option(value="ZA") South Africa
-                        option(value="SS") South Sudan
-                        option(value="ES") Spain
-                        option(value="LK") Sri Lanka
-                        option(value="SD") Sudan
-                        option(value="SR") Suriname
-                        option(value="SE") Sweden
-                        option(value="CH") Switzerland
-                        option(value="SY") Syrian Arab Republic
-                        option(value="TJ") Tajikistan
-                        option(value="TZ") Tanzania, United Republic of
-                        option(value="TH") Thailand
-                        option(value="TL") Timor-Leste
-                        option(value="TG") Togo
-                        option(value="TO") Tonga
-                        option(value="TT") Trinidad and Tobago
-                        option(value="TN") Tunisia
-                        option(value="TR") Turkey
-                        option(value="TM") Turkmenistan
-                        option(value="TV") Tuvalu
-                        option(value="UG") Uganda
-                        option(value="UA") Ukraine
-                        option(value="AE") United Arab Emirates
-                        option(value="GB") United Kingdom of Great Britain and Northern Ireland
-                        option(value="US") United States of America
-                        option(value="UY") Uruguay
-                        option(value="UZ") Uzbekistan
-                        option(value="VU") Vanuatu
-                        option(value="VE") Venezuela (Bolivarian Republic of)
-                        option(value="VN") Viet Nam
-                        option(value="YE") Yemen
-                        option(value="ZM") Zambia
-                        option(value="ZW") Zimbabwe
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_defaultHomepage__") Default Homepage
-                    select.homepage
-                        option(value="trending" data-localise="__MSG_trending__") Trending
-                        option(value="feed" data-localise="__MSG_feed__") Feed
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_showComments__") Show Comments
-                    input.comments(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_minimizeDesc__") Minimize Description by default
-                    input.minimizeDescription(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_storeHistory__") Store Watch History
-                    input.watchHistory(type="checkbox")
-
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_enabledCodecs__") Enabled Codecs (Multiple)
-                    select.enabledCodecs
-                        option(value="av1") AV1
-                        option(value="vp9") VP9
-                        option(value="avc") AVC (h.264)
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_disableLBRY__") Disable LBRY for Streaming
-                    input.disableLBRY(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_enableProxyLBRY__") Enable Proxy for LBRY
-                    input.proxyLBRY(type="checkbox")
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://piped.com')
@@ -653,67 +67,6 @@ body.option(dir="auto")
 
         #pipedMaterial
             hr
-            .custom-settings
-                .some-block.option-block
-                    h4(data-localise="__MSG_autoplayVid__") Autoplay Video
-                    input.youtubeAutoplay(type="checkbox")
-
-                .some-block.option-block
-                    h4
-                        x(data-localise="__MSG_volume__") Volume:
-                        span.volume-value --%
-                    input.volume(type="range" min="0" max="100" step="1")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_audioOnly__") Audio Only
-                    input.listen(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_disableLBRY__") Disable LBRY
-                    input.disableLBRY(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_proxyLBRY__") Proxy LBRY videos
-                    input.proxyLBRY(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_enableSponsorBlock__") Enable Sponsorblock
-                    input.sponsorblock(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipNote__") Skip to the last watched point when encountering a video already seen
-                    input.skipToLastPoint(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipSponsors__") Skip Sponsors
-                    input.selectedSkip-sponsor(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipIntermission__") Skip Intermission/Intro Animation
-                    input.selectedSkip-intro(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skripEndcars__") Skip Endcards/Credits
-                    input.selectedSkip-outro(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skripPreview__") Skip Preview/Recap
-                    input.selectedSkip-preview(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipReminder__") Skip Interaction Reminder (Subscribe)
-                    input.selectedSkip-interaction(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipUnpaidPromo__") Skip Unpaid/Self Promotion
-                    input.selectedSkip-selfpromo(type="checkbox")
-
-                .some-block.option-block
-                    h4(data-localise="__MSG_skipMusic__") Skip Music: Non-Music Section
-                    input.selectedSkip-music_offtopic(type="checkbox")
-
-                hr
-
             .normal
                 include ../../widgets/instances.pug
                 +instances('https://piped-material.com')
diff --git a/src/pages/options/youtubeMusic/youtubeMusic.html b/src/pages/options/youtubeMusic/youtubeMusic.html
index 77fd3f0e..9910630e 100644
--- a/src/pages/options/youtubeMusic/youtubeMusic.html
+++ b/src/pages/options/youtubeMusic/youtubeMusic.html
@@ -12,9 +12,9 @@
 <body class="option" dir="auto">
     <section class="links">
       <div class="title">
-        <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
+          <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><a href="../general/general.html" data-localise="__MSG_general__">General</a>
       </div>
       <div class="title"> <img src="../../../assets/images/youtube-icon.png"><a href="../youtube/youtube.html" data-localise="__MSG_youtube__">YouTube </a></div>
       <div class="title"> <img src="../../../assets/images/youtube-music-icon.png"><a class="selected" href="../youtubeMusic/youtubeMusic.html" data-localise="__MSG_ytmusic__">YT Music</a></div>
@@ -25,33 +25,33 @@
       <div class="title"> <img src="../../../assets/images/imgur-icon.png"><a href="../imgur/imgur.html" data-localise="__MSG_imgur__">Imgur</a></div>
       <div class="title"> <img src="../../../assets/images/wikipedia-icon.svg"><a href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__">Wikipedia</a></div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-          <circle cx="500" cy="500" r="500"></circle>
-          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
-          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
-        </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
+          <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+            <circle cx="500" cy="500" r="500"></circle>
+            <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+            <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+          </svg><a href="../medium/medium.html" data-localise="__MSG_medium__">Medium</a>
       </div>
       <div class="title"> <img src="../../../assets/images/peertube-icon.svg"><a href="../peertube/peertube.html" data-localise="__MSG_peertube__">Peertube</a></div>
       <div class="title"> <img src="../../../assets/images/lbry-icon.png"><a href="../lbry/lbry.html" data-localise="__MSG_lbry__">LBRY/Odysee</a></div>
       <div class="title"> 
-        <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
+          <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><a href="../search/search.html" data-localise="__MSG_search__">Search</a>
       </div>
       <div class="title"> 
-        <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
+          <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><a href="../translate/translate.html" data-localise="__MSG_translate__">Translate</a>
       </div>
       <div class="title"> 
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path>
-        </svg><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
+          <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><a href="../maps/maps.html" data-localise="__MSG_maps__">Maps</a>
       </div>
       <div class="title"> 
-        <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
+          <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><a href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__">Send Files</a>
       </div>
     </section>
   <section class="option-block">
diff --git a/src/pages/popup/popup.html b/src/pages/popup/popup.html
index 68831940..0cd1a4f7 100644
--- a/src/pages/popup/popup.html
+++ b/src/pages/popup/popup.html
@@ -1,183 +1,112 @@
 <!DOCTYPE html>
-<html>
-
-<head>
-  <meta charset="utf-8" />
-  <meta name="viewport" content="width=device-width, initial-scale=1" />
-  <link href="../stylesheets/styles.css" rel="stylesheet" />
-  <link href="./style.css" rel="stylesheet" />
-</head>
-
-<body dir="auto">
-  <div id="youtube" class="some-block">
-    <a class="title" href="https://youtube.com">
-      <img src="../../assets/images/youtube-icon.png" />
-      <h4 data-localise="__MSG_youtube__">YouTube</h4>
-    </a>
-    <input id="disable-youtube" type="checkbox" checked />
-  </div>
-
-  <div id="youtubeMusic" class="some-block">
-    <a class="title" href="https://music.youtube.com">
-      <img src="../../assets/images/youtube-music-icon.png" />
-      <h4 data-localise="__MSG_ytmusic__">YT Music</h4>
-    </a>
-    <input id="disable-youtubeMusic" type="checkbox" checked />
-  </div>
-
-  <div id="twitter" class="some-block">
-    <a class="title" href="https://twitter.com">
-      <img src="../../assets/images/twitter-icon.png" />
-      <h4 data-localise="__MSG_twitter__">Twitter</h4>
-    </a>
-    <input id="disable-nitter" type="checkbox" checked />
-  </div>
-
-  <div id="instagram" class="some-block">
-    <a class="title" href="https://instagram.com">
-      <!-- https://www.iconfinder.com/Indygo -->
-      <img src="../../assets/images/instagram-icon.png" />
-      <h4 data-localise="__MSG_instagram__">Instagram</h4>
-    </a>
-    <input id="disable-bibliogram" type="checkbox" checked />
-  </div>
-
-  <div id="tikTok" class="some-block">
-    <a class="title" href="https://tiktok.com">
-      <!-- https://www.flaticon.com/authors/designer-shah -->
-      <img src="../../assets/images/tiktok-icon.png" />
-      <h4 data-localise="__MSG_tiktok__">TikTok</h4>
-    </a>
-    <input id="disable-tiktok" type="checkbox" checked />
-  </div>
-
-  <div id="imgur" class="some-block">
-    <a class="title" href="https://imgur.com">
-      <img src="../../assets/images/imgur-icon.png" />
-      <h4 data-localise="__MSG_imgur__">Imgur</h4>
-    </a>
-    <input id="disable-imgur" type="checkbox" checked />
-  </div>
-
-  <div id="reddit" class="some-block">
-    <a class="title" href="https://reddit.com">
-      <!-- https://www.flaticon.com/authors/md-tanvirul-haque -->
-      <img src="../../assets/images/reddit-icon.png" />
-      <h4 data-localise="__MSG_reddit__">Reddit</h4>
-    </a>
-    <input id="disable-reddit" type="checkbox" checked />
-  </div>
-
-  <div id="wikipedia" class="some-block">
-    <a class="title" href="https://wikipedia.org">
-      <img src="../../../assets/images/wikipedia-icon.svg" />
-      <h4 data-localise="__MSG_wikipedia__">Wikipedia</h4>
-    </a>
-    <input id="disable-wikipedia" type="checkbox" checked />
-  </div>
-
-  <div id="medium" class="some-block">
-    <a class="title" href="https://medium.com">
-      <!-- https://markentier.tech/posts/2020/10/medium-icon-svg/ -->
-      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
-        <circle cx="500" cy="500" r="500" />
-        <ellipse ry="475" rx="250" cy="501" cx="1296" />
-        <ellipse cx="1682" cy="502" rx="88" ry="424" />
-      </svg>
-      <h4 data-localise="__MSG_medium__">Medium</h4>
-    </a>
-    <input id="disable-medium" type="checkbox" checked />
-  </div>
-
-  <div id="peertube" class="some-block">
-    <a class="title" href="https://search.joinpeertube.org">
-      <img src="../../../assets/images/peertube-icon.svg" />
-      <h4 data-localise="__MSG_peertube__">Peertube</h4>
-    </a>
-    <input id="disable-peertube" type="checkbox" checked />
-  </div>
-
-  <div id="lbry" class="some-block">
-    <a class="title" href="https://odysee.com">
-      <img src="../../../assets/images/lbry-icon.png" />
-      <h4 data-localise="__MSG_lbry__">LBRY</h4>
-    </a>
-    <input id="disable-lbry" type="checkbox" checked />
-  </div>
-  <div id="search" class="some-block">
-    <a class="title" href="http://libredirect.invalid">
-      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor">
-        <path d="M0 0h24v24H0V0z" fill="none" />
-        <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" />
-      </svg>
-      <h4 data-localise="__MSG_search__">Search</h4>
-    </a>
-    <input id="disable-search" type="checkbox" checked />
-  </div>
-
-  <div id="translate" class="some-block">
-    <a class="title" href="https://translate.google.com">
-      <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" />
-      </svg>
-      <h4 data-localise="__MSG_translate__">Translate</h4>
-    </a>
-    <input id="disable-simplyTranslate" type="checkbox" checked />
-  </div>
-
-  <div id="maps" class="some-block">
-    <a class="title" href="https://maps.google.com">
-      <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-        <path d="M0 0h24v24H0V0z" fill="none" />
-        <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" />
-      </svg>
-      <h4 data-localise="__MSG_maps__">Maps</h4>
-    </a>
-    <input id="disable-osm" type="checkbox" checked />
-  </div>
-
-  <div id="sendTargets" class="some-block">
-    <a class="title" href="http://send.invalid">
-      <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" />
-      </svg>
-      <h4 data-localise="__MSG_sendFiles__">Send Files</h4>
-    </a>
-    <input id="disable-sendTargets" type="checkbox" checked />
-  </div>
-
-  <div class="buttons-popup">
-    <a class="button" id="change-instance">
-      <svg xmlns="http://www.w3.org/2000/svg" height="26px" viewBox="0 0 24 24" 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" />
-      </svg>
-      <x data-localise="__MSG_instance__">Instance</x>
-    </a>
-    <a class="button" id="more-options">
-      <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" />
-      </svg>
-      <x data-localise="__MSG_settings__">Settings</x>
-    </a>
-    <a class="button" id="copy_raw">
-      <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" 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" />
-      </svg>
-      <x data-localise="__MSG_copyRaw__">Copy Raw</x>
-    </a>
-  </div>
-
-  <script type="module" src="../options/init.js"></script>
-  <script type="module" src="./popup.js"></script>
-  <script src="../../assets/javascripts/localise.js"></script>
-</body>
-
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+    <link href="../stylesheets/styles.css" rel="stylesheet">
+    <link href="./style.css" rel="stylesheet">
+  </head>
+  <body dir="auto">
+    <div class="some-block" id="youtube"><a class="title" href="https://youtube.com"><img src="../../assets/images/youtube-icon.png">
+        <h4>YouTube</h4></a>
+      <input id="disable-youtube" type="checkbox">
+    </div>
+    <div class="some-block" id="youtubeMusic"><a class="title" href="https://music.youtube.com"><img src="../../assets/images/youtube-music-icon.png">
+        <h4>YT Music</h4></a>
+      <input id="disable-youtubeMusic" type="checkbox">
+    </div>
+    <div class="some-block" id="twitter"><a class="title" href="https://twitter.com"><img src="../../assets/images/twitter-icon.png">
+        <h4>Twitter</h4></a>
+      <input id="disable-nitter" type="checkbox">
+    </div>
+    <div class="some-block" id="instagram"><a class="title" href="https://instagram.com"><img src="../../assets/images/instagram-icon.png">
+        <h4>Instagram</h4></a>
+      <input id="disable-bibliogram" type="checkbox">
+    </div>
+    <div class="some-block" id="tikTok"><a class="title" href="https://tiktok.com"><img src="../../assets/images/tiktok-icon.png">
+        <h4>TikTok</h4></a>
+      <input id="disable-tiktok" type="checkbox">
+    </div>
+    <div class="some-block" id="imgur"><a class="title" href="https://imgur.com"><img src="../../assets/images/imgur-icon.png">
+        <h4>Imgur</h4></a>
+      <input id="disable-imgur" type="checkbox">
+    </div>
+    <div class="some-block" id="reddit"><a class="title" href="https://reddit.com"><img src="../../assets/images/reddit-icon.png">
+        <h4>Reddit</h4></a>
+      <input id="disable-reddit" type="checkbox">
+    </div>
+    <div class="some-block" id="wikipedia"><a class="title" href="https://wikipedia.com"><img src="../../assets/images/wikipedia-icon.png">
+        <h4>Wikipedia</h4></a>
+      <input id="disable-wikipedia" type="checkbox">
+    </div>
+    <div class="some-block" id="medium"><a class="title" href="https://medium.com">
+        <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor">
+          <circle cx="500" cy="500" r="500"></circle>
+          <ellipse ry="475" rx="250" cy="501" cx="1296"></ellipse>
+          <ellipse cx="1682" cy="502" rx="88" ry="424"></ellipse>
+        </svg>
+        <h4>Medium</h4></a>
+      <input id="disable-medium" type="checkbox">
+    </div>
+    <div class="some-block" id="peertube"><a class="title" href="https://peertube.com"><img src="../../assets/images/peertube-icon.png">
+        <h4>Peertube</h4></a>
+      <input id="disable-peertube" type="checkbox">
+    </div>
+    <div class="some-block" id="lbry"><a class="title" href="https://lbry.com"><img src="../../assets/images/lbry-icon.png">
+        <h4>LBRY</h4></a>
+      <input id="disable-lbry" type="checkbox">
+    </div>
+    <div class="some-block" id="search"><a class="title" href="https://search.com">
+        <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>
+        <h4>Search</h4></a>
+      <input id="disable-search" type="checkbox">
+    </div>
+    <div class="some-block" id="translate"><a class="title" href="https://translate.com">
+        <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>
+        <h4>Translate</h4></a>
+      <input id="disable-simplyTranslate" type="checkbox">
+    </div>
+    <div class="some-block" id="maps"><a class="title" href="https://maps.com">
+        <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>
+        <h4>Maps</h4></a>
+      <input id="disable-osm" type="checkbox">
+    </div>
+    <div class="some-block" id="sendTargets"><a class="title" href="https://send.invalid">
+        <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>
+        <h4>Send Files</h4></a>
+      <input id="disable-sendTargets" type="checkbox">
+    </div>
+    <div class="some-block"><a class="title button" id="change-instance">
+        <svg xmlns="http://www.w3.org/2000/svg" height="26px" viewBox="0 0 24 24" 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"></path>
+        </svg>
+        <h4>Change Instance</h4></a></div>
+    <div class="some-block"><a class="title button" id="more-options">
+        <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>
+        <h4>Settings</h4></a></div>
+    <div class="some-block" title="Copy the original redirected link">        <a class="title button" id="copy_raw">
+        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" 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"></path>
+        </svg>
+        <h4>Copy Raw</h4></a></div>
+    <div class="some-block" title="Unify cookies across all selected instances"><a class="title button" id="unify">
+        <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">
+          <rect fill="none" height="24" width="24"></rect>
+          <path d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z"></path>
+        </svg>
+        <h4>Unify Settings</h4></a></div>
+    <script type="module" src="../options/init.js"></script>
+    <script type="module" src="./popup.js"></script>
+    <script src="../../assets/javascripts/localise.js"></script>
+  </body>
 </html>
\ No newline at end of file
diff --git a/src/pages/popup/popup.js b/src/pages/popup/popup.js
index e3f52baf..61e0ee1b 100644
--- a/src/pages/popup/popup.js
+++ b/src/pages/popup/popup.js
@@ -36,6 +36,8 @@ let disableImgurElement = document.getElementById("disable-imgur");
 let disableTiktokElement = document.getElementById("disable-tiktok");
 
 let copyRawElement = document.getElementById('copy_raw');
+let unifyElement = document.getElementById('unify');
+
 browser.storage.local.get(
   [
     "disableTwitter",
@@ -93,38 +95,60 @@ document.addEventListener("change", () => {
   });
 })
 
-
 let changeInstanceElement = document.getElementById("change-instance")
 changeInstanceElement.addEventListener("click", switchInstance);
 copyRawElement.addEventListener("click", copyRaw);
+document.getElementById("more-options").addEventListener("click", () => browser.runtime.openOptionsPage());
+unifyElement.addEventListener("click", unify)
 
+function unify() {
+  browser.tabs.query(
+    { active: true, currentWindow: true },
+    async tabs => {
+      let currTab = tabs[0]
+      if (currTab) {
+        let url = new URL(currTab.url);
 
-document.getElementById("more-options").addEventListener("click",
-  () => browser.runtime.openOptionsPage()
-);
+        let result = await youtubeHelper.initInvidiousCookies(url);
+        if (!result) result = await youtubeHelper.copyPipedLocalStorage(url, currTab.id);
+        if (!result) result = await twitterHelper.initNitterCookies(url);
+        if (!result) result = await redditHelper.initLibredditCookies(url);
+        if (!result) result = await redditHelper.initTedditCookies(url);
+        if (!result) result = await redditHelper.initSearxCookies(url);
+        if (!result) result = await redditHelper.initSearxngCookies(url);
+        if (!result) result = await tiktokHelper.initProxiTokCookies(url);
+        if (!result) result = await tiktokHelper.initWikilessCookies(url);
+
+        if (result) {
+          const textElement = unifyElement.getElementsByTagName('h4')[0]
+          const oldHtml = textElement.innerHTML;
+          textElement.innerHTML = 'Unified';
+          setTimeout(() => textElement.innerHTML = oldHtml, 1000);
+        }
+      }
+    }
+  )
+}
 
 function switchInstance() {
   browser.tabs.query({ active: true, currentWindow: true }, async tabs => {
     let currTab = tabs[0];
     if (currTab) {
-      let url = currTab.url;
-      let tabUrl
-      try { tabUrl = new URL(url); }
-      catch (_) { return false; }
+      let url = new URL(currTab.url);
       let newUrl;
 
-      // newUrl = youtubeHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = twitterHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = instagramHelper.switchInstance(tabUrl);
-      if (!newUrl) newUrl = await redditHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = searchHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = translateHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = mediumHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = sendTargetsHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = peertubeHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = lbryHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = imgurHelper.switchInstance(tabUrl);
-      // if (!newUrl) newUrl = wikipediaHelper.switchInstance(tabUrl);
+      // newUrl = youtubeHelper.switchInstance(url);
+      // if (!newUrl) newUrl = twitterHelper.switchInstance(url);
+      // if (!newUrl) newUrl = instagramHelper.switchInstance(url);
+      if (!newUrl) newUrl = await redditHelper.switchInstance(url);
+      // if (!newUrl) newUrl = searchHelper.switchInstance(url);
+      // if (!newUrl) newUrl = translateHelper.switchInstance(url);
+      // if (!newUrl) newUrl = mediumHelper.switchInstance(url);
+      // if (!newUrl) newUrl = sendTargetsHelper.switchInstance(url);
+      // if (!newUrl) newUrl = peertubeHelper.switchInstance(url);
+      // if (!newUrl) newUrl = lbryHelper.switchInstance(url);
+      // if (!newUrl) newUrl = imgurHelper.switchInstance(url);
+      // if (!newUrl) newUrl = wikipediaHelper.switchInstance(url);
 
       if (newUrl) {
         browser.tabs.update({ url: newUrl });
@@ -136,31 +160,29 @@ function switchInstance() {
 }
 
 function copyRaw() {
-  browser.tabs.query({ active: true, currentWindow: true }, function (tabs) {
-    let currTab = tabs[0];
-    if (currTab) {
-      let url = currTab.url;
-      let tabUrl
-      try { tabUrl = new URL(url); }
-      catch (_) { return false; }
-      let newUrl;
-      newUrl = youtubeHelper.reverse(tabUrl);
-      if (!newUrl) newUrl = twitterHelper.reverse(tabUrl);
-      if (!newUrl) newUrl = instagramHelper.reverse(tabUrl);
-      if (!newUrl) newUrl = tiktokHelper.reverse(tabUrl);
-      if (!newUrl) newUrl = imgurHelper.reverse(tabUrl);
-      if (newUrl) {
-        navigator.clipboard.writeText(newUrl);
-        const oldHtml = copyRawElement.innerHTML;
-        copyRawElement.innerHTML = `
-        <svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor">
-          <path d="M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z"/>
-        </svg>
-        Copied`;
-        setTimeout(() => copyRawElement.innerHTML = oldHtml, 1000);
+  browser.tabs.query(
+    { active: true, currentWindow: true }, tabs => {
+      let currTab = tabs[0];
+      if (currTab) {
+        let url = new URL(currTab.url);
+        let newUrl;
+        newUrl = youtubeHelper.reverse(url);
+
+        if (!newUrl) newUrl = twitterHelper.reverse(url);
+        if (!newUrl) newUrl = instagramHelper.reverse(url);
+        if (!newUrl) newUrl = tiktokHelper.reverse(url);
+        if (!newUrl) newUrl = imgurHelper.reverse(url);
+
+        if (newUrl) {
+          navigator.clipboard.writeText(newUrl);
+          const textElement = copyRawElement.getElementsByTagName('h4')[0]
+          const oldHtml = textElement.innerHTML;
+          textElement.innerHTML = 'Copied';
+          setTimeout(() => textElement.innerHTML = oldHtml, 1000);
+        }
       }
     }
-  })
+  )
 }
 
 let popupFrontends;
diff --git a/src/pages/popup/popup.pug b/src/pages/popup/popup.pug
new file mode 100644
index 00000000..f2cc4635
--- /dev/null
+++ b/src/pages/popup/popup.pug
@@ -0,0 +1,123 @@
+include ../widgets/icons.pug
+
+doctype html
+html(lang="en")
+    head
+        meta(charset="utf-8")
+        meta(name="viewport" content="width=device-width, initial-scale=1")
+        link(href="../stylesheets/styles.css" rel="stylesheet")
+        link(href="./style.css" rel="stylesheet")
+    body(dir="auto")
+        #youtube.some-block
+            a.title(href="https://youtube.com")
+                img(src="../../assets/images/youtube-icon.png")
+                h4 YouTube
+            input#disable-youtube(type="checkbox")
+
+        #youtubeMusic.some-block
+            a.title(href="https://music.youtube.com")
+                img(src="../../assets/images/youtube-music-icon.png")
+                h4 YT Music
+            input#disable-youtubeMusic(type="checkbox")
+
+        #twitter.some-block
+            a.title(href="https://twitter.com")
+                img(src="../../assets/images/twitter-icon.png")
+                h4 Twitter
+            input#disable-nitter(type="checkbox")
+
+        #instagram.some-block
+            a.title(href="https://instagram.com")
+                img(src="../../assets/images/instagram-icon.png")
+                h4 Instagram
+            input#disable-bibliogram(type="checkbox")
+
+        #tikTok.some-block
+            a.title(href="https://tiktok.com")
+                img(src="../../assets/images/tiktok-icon.png")
+                h4 TikTok
+            input#disable-tiktok(type="checkbox")
+
+        #imgur.some-block
+            a.title(href="https://imgur.com")
+                img(src="../../assets/images/imgur-icon.png")
+                h4 Imgur
+            input#disable-imgur(type="checkbox")
+
+        #reddit.some-block
+            a.title(href="https://reddit.com")
+                img(src="../../assets/images/reddit-icon.png")
+                h4 Reddit
+            input#disable-reddit(type="checkbox")
+
+        #wikipedia.some-block
+            a.title(href="https://wikipedia.com")
+                img(src="../../assets/images/wikipedia-icon.png")
+                h4 Wikipedia
+            input#disable-wikipedia(type="checkbox")
+
+        #medium.some-block
+            a.title(href="https://medium.com")
+                +medium
+                h4 Medium
+            input#disable-medium(type="checkbox")
+
+        #peertube.some-block
+            a.title(href="https://peertube.com")
+                img(src="../../assets/images/peertube-icon.png")
+                h4 Peertube
+            input#disable-peertube(type="checkbox")
+
+        #lbry.some-block
+            a.title(href="https://lbry.com")
+                img(src="../../assets/images/lbry-icon.png")
+                h4 LBRY
+            input#disable-lbry(type="checkbox")
+
+        #search.some-block
+            a.title(href="https://search.com")
+                +search
+                h4 Search
+            input#disable-search(type="checkbox")
+
+        #translate.some-block
+            a.title(href="https://translate.com")
+                +translate
+                h4 Translate
+            input#disable-simplyTranslate(type="checkbox")
+
+        #maps.some-block
+            a.title(href="https://maps.com")
+                +maps
+                h4 Maps
+            input#disable-osm(type="checkbox")
+
+        #sendTargets.some-block
+            a.title(href="https://send.invalid")
+                +send
+                h4 Send Files
+            input#disable-sendTargets(type="checkbox")
+
+        .some-block
+            a#change-instance.title.button
+                +change_instance
+                h4 Change Instance
+
+        .some-block
+            a#more-options.title.button
+                +settings
+                h4 Settings
+
+        .some-block(title="Copy the original redirected link")         
+            a#copy_raw.title.button
+                +copy_raw
+                h4 Copy Raw
+
+        .some-block(title="Unify cookies across all selected instances")
+            a#unify.title.button
+                +unify
+                h4 Unify Settings
+
+        script(type="module" src="../options/init.js")
+        script(type="module" src="./popup.js")
+        script(src="../../assets/javascripts/localise.js")
\ No newline at end of file
diff --git a/src/pages/stylesheets/styles.css b/src/pages/stylesheets/styles.css
index c1c2a53f..4421aa83 100644
--- a/src/pages/stylesheets/styles.css
+++ b/src/pages/stylesheets/styles.css
@@ -278,15 +278,9 @@ div.buttons-popup {
 }
 
 .button {
-  display: flex;
-  text-align: center;
-  justify-content: space-between;
-  align-items: center;
   color: var(--text);
   font-size: 16px;
   font-weight: bold;
-  margin: 0;
-  padding: 5px 5px;
   text-decoration: none;
   cursor: pointer;
   transition-duration: 0.1s;
diff --git a/src/pages/widgets/captions_options.pug b/src/pages/widgets/captions_options.pug
deleted file mode 100644
index 51d18d62..00000000
--- a/src/pages/widgets/captions_options.pug
+++ /dev/null
@@ -1,130 +0,0 @@
-option(value="" data-localise="__MSG_none__") none
-option(value="English") English
-option(value="English (auto-generated)") English (auto-generated)
-option(value="English (United Kingdom)") English (United Kingdom)
-option(value="English (United States)") English (United States)
-option(value="Afrikaans") Afrikaans
-option(value="Albanian") Albanian
-option(value="Amharic") Amharic
-option(value="Arabic") Arabic
-option(value="Armenian") Armenian
-option(value="Azerbaijani") Azerbaijani
-option(value="Bangla") Bangla
-option(value="Basque") Basque
-option(value="Belarusian") Belarusian
-option(value="Bosnian") Bosnian
-option(value="Bulgarian") Bulgarian
-option(value="Burmese") Burmese
-option(value="Cantonese (Hong Kong)") Cantonese (Hong Kong)
-option(value="Catalan") Catalan
-option(value="Cebuano") Cebuano
-option(value="Chinese") Chinese
-option(value="Chinese (China)") Chinese (China)
-option(value="Chinese (Hong Kong)") Chinese (Hong Kong)
-option(value="Chinese (Simplified)") Chinese (Simplified)
-option(value="Chinese (Taiwan)") Chinese (Taiwan)
-option(value="Chinese (Traditional)") Chinese (Traditional)
-option(value="Corsican") Corsican
-option(value="Croatian") Croatian
-option(value="Czech") Czech
-option(value="Danish") Danish
-option(value="Dutch") Dutch
-option(value="Dutch (auto-generated)") Dutch (auto-generated)
-option(value="Esperanto") Esperanto
-option(value="Estonian") Estonian
-option(value="Filipino") Filipino
-option(value="Finnish") Finnish
-option(value="French") French
-option(value="French (auto-generated)") French (auto-generated)
-option(value="Galician") Galician
-option(value="Georgian") Georgian
-option(value="German") German
-option(value="German (auto-generated)") German (auto-generated)
-option(value="Greek") Greek
-option(value="Gujarati") Gujarati
-option(value="Haitian Creole") Haitian Creole
-option(value="Hausa") Hausa
-option(value="Hawaiian") Hawaiian
-option(value="Hebrew") Hebrew
-option(value="Hindi") Hindi
-option(value="Hmong") Hmong
-option(value="Hungarian") Hungarian
-option(value="Icelandic") Icelandic
-option(value="Igbo") Igbo
-option(value="Indonesian") Indonesian
-option(value="Indonesian (auto-generated)") Indonesian (auto-generated)
-option(value="Interlingue") Interlingue
-option(value="Irish") Irish
-option(value="Italian") Italian
-option(value="Italian (auto-generated)") Italian (auto-generated)
-option(value="Japanese") Japanese
-option(value="Japanese (auto-generated)") Japanese (auto-generated)
-option(value="Javanese") Javanese
-option(value="Kannada") Kannada
-option(value="Kazakh") Kazakh
-option(value="Khmer") Khmer
-option(value="Korean") Korean
-option(value="Korean (auto-generated)") Korean (auto-generated)
-option(value="Kurdish") Kurdish
-option(value="Kyrgyz") Kyrgyz
-option(value="Lao") Lao
-option(value="Latin") Latin
-option(value="Latvian") Latvian
-option(value="Lithuanian") Lithuanian
-option(value="Luxembourgish") Luxembourgish
-option(value="Macedonian") Macedonian
-option(value="Malagasy") Malagasy
-option(value="Malay") Malay
-option(value="Malayalam") Malayalam
-option(value="Maltese") Maltese
-option(value="Maori") Maori
-option(value="Marathi") Marathi
-option(value="Mongolian") Mongolian
-option(value="Nepali") Nepali
-option(value="Norwegian Bokmål") Norwegian Bokmål
-option(value="Nyanja") Nyanja
-option(value="Pashto") Pashto
-option(value="Persian") Persian
-option(value="Polish") Polish
-option(value="Portuguese") Portuguese
-option(value="Portuguese (auto-generated)") Portuguese (auto-generated)
-option(value="Portuguese (Brazil)") Portuguese (Brazil)
-option(value="Punjabi") Punjabi
-option(value="Romanian") Romanian
-option(value="Russian") Russian
-option(value="Russian (auto-generated)") Russian (auto-generated)
-option(value="Samoan") Samoan
-option(value="Scottish Gaelic") Scottish Gaelic
-option(value="Serbian") Serbian
-option(value="Shona") Shona
-option(value="Sindhi") Sindhi
-option(value="Sinhala") Sinhala
-option(value="Slovak") Slovak
-option(value="Slovenian") Slovenian
-option(value="Somali") Somali
-option(value="Southern Sotho") Southern Sotho
-option(value="Spanish") Spanish
-option(value="Spanish (auto-generated)") Spanish (auto-generated)
-option(value="Spanish (Latin America)") Spanish (Latin America)
-option(value="Spanish (Mexico)") Spanish (Mexico)
-option(value="Spanish (Spain)") Spanish (Spain)
-option(value="Sundanese") Sundanese
-option(value="Swahili") Swahili
-option(value="Swedish") Swedish
-option(value="Tajik") Tajik
-option(value="Tamil") Tamil
-option(value="Telugu") Telugu
-option(value="Thai") Thai
-option(value="Turkish") Turkish
-option(value="Turkish (auto-generated)") Turkish (auto-generated)
-option(value="Ukrainian") Ukrainian
-option(value="Urdu") Urdu
-option(value="Uzbek") Uzbek
-option(value="Vietnamese") Vietnamese
-option(value="Vietnamese (auto-generated)") Vietnamese (auto-generated)
-option(value="Welsh") Welsh
-option(value="Western Frisian") Western Frisian
-option(value="Xhosa") Xhosa
-option(value="Yiddish") Yiddish
-option(value="Yoruba") Yoruba
-option(value="Zulu") Zulu
\ No newline at end of file
diff --git a/src/pages/widgets/from-to.pug b/src/pages/widgets/from-to.pug
deleted file mode 100644
index 9140e094..00000000
--- a/src/pages/widgets/from-to.pug
+++ /dev/null
@@ -1,108 +0,0 @@
-option(value="af") Afrikaans
-option(value="sq") Albanian
-option(value="am") Amharic
-option(value="ar") Arabic
-option(value="hy") Armenian
-option(value="az") Azerbaijani
-option(value="eu") Basque
-option(value="be") Belarusian
-option(value="bn") Bengali
-option(value="bs") Bosnian
-option(value="bg") Bulgarian
-option(value="ca") Catalan
-option(value="ceb") Cebuano
-option(value="ny") Chichewa
-option(value="zh-CN") Chinese
-option(value="co") Corsican
-option(value="hr") Croatian
-option(value="cs") Czech
-option(value="da") Danish
-option(value="nl") Dutch
-option(value="en") English
-option(value="eo") Esperanto
-option(value="et") Estonian
-option(value="tl") Filipino
-option(value="fi") Finnish
-option(value="fr") French
-option(value="fy") Frisian
-option(value="gl") Galician
-option(value="ka") Georgian
-option(value="de") German
-option(value="el") Greek
-option(value="gu") Gujarati
-option(value="ht") Haitian Creole
-option(value="ha") Hausa
-option(value="haw") Hawaiian
-option(value="iw") Hebrew
-option(value="hi") Hindi
-option(value="hmn") Hmong
-option(value="hu") Hungarian
-option(value="is") Icelandic
-option(value="ig") Igbo
-option(value="id") Indonesian
-option(value="ga") Irish
-option(value="it") Italian
-option(value="ja") Japanese
-option(value="jw") Javanese
-option(value="kn") Kannada
-option(value="kk") Kazakh
-option(value="km") Khmer
-option(value="rw") Kinyarwanda
-option(value="ko") Korean
-option(value="ku") Kurdish (Kurmanji)
-option(value="ky") Kyrgyz
-option(value="lo") Lao
-option(value="la") Latin
-option(value="lv") Latvian
-option(value="lt") Lithuanian
-option(value="lb") Luxembourgish
-option(value="mk") Macedonian
-option(value="mg") Malagasy
-option(value="ms") Malay
-option(value="ml") Malayalam
-option(value="mt") Maltese
-option(value="mi") Maori
-option(value="mr") Marathi
-option(value="mn") Mongolian
-option(value="my") Myanmar (Burmese)
-option(value="ne") Nepali
-option(value="no") Norwegian
-option(value="or") Odia (Oriya)
-option(value="ps") Pashto
-option(value="fa") Persian
-option(value="pl") Polish
-option(value="pt") Portuguese
-option(value="pa") Punjabi
-option(value="ro") Romanian
-option(value="ru") Russian
-option(value="sm") Samoan
-option(value="gd") Scots Gaelic
-option(value="sr") Serbian
-option(value="st") Sesotho
-option(value="sn") Shona
-option(value="sd") Sindhi
-option(value="si") Sinhala
-option(value="sk") Slovak
-option(value="sl") Slovenian
-option(value="so") Somali
-option(value="es") Spanish
-option(value="su") Sundanese
-option(value="sw") Swahili
-option(value="sv") Swedish
-option(value="tg") Tajik
-option(value="ta") Tamil
-option(value="tt") Tatar
-option(value="te") Telugu
-option(value="th") Thai
-option(value="tr") Turkish
-option(value="tk") Turkmen
-option(value="uk") Ukrainian
-option(value="ur") Urdu
-option(value="ug") Uyghur
-option(value="uz") Uzbek
-option(value="vi") Vietnamese
-option(value="cy") Welsh
-option(value="xh") Xhosa
-option(value="yi") Yiddish
-option(value="yo") Yoruba
-option(value="zu") Zulu
\ No newline at end of file
diff --git a/src/pages/widgets/icons.pug b/src/pages/widgets/icons.pug
new file mode 100644
index 00000000..4ef8d6b2
--- /dev/null
+++ b/src/pages/widgets/icons.pug
@@ -0,0 +1,44 @@
+mixin medium
+    svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor")
+        circle(cx="500" cy="500" r="500")
+        ellipse(ry="475" rx="250" cy="501" cx="1296")
+        ellipse(cx="1682" cy="502" rx="88" ry="424")
+
+mixin search
+    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")
+
+mixin translate
+    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")
+
+mixin maps
+    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")
+
+mixin send
+    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")
+
+mixin change_instance
+    svg(xmlns="http://www.w3.org/2000/svg" height="26px" viewBox="0 0 24 24" 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")
+
+mixin settings
+    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")
+
+mixin copy_raw
+    svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" 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")
+
+mixin general
+    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")
+
+
+mixin unify
+    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")
+        rect(fill="none" height="24" width="24")
+        path(d="M18,2H9C7.9,2,7,2.9,7,4v12c0,1.1,0.9,2,2,2h9c1.1,0,2-0.9,2-2V4C20,2.9,19.1,2,18,2z M18,16H9V4h9V16z M3,15v-2h2v2H3z M3,9.5h2v2H3V9.5z M10,20h2v2h-2V20z M3,18.5v-2h2v2H3z M5,22c-1.1,0-2-0.9-2-2h2V22z M8.5,22h-2v-2h2V22z M13.5,22L13.5,22l0-2h2 v0C15.5,21.1,14.6,22,13.5,22z M5,6L5,6l0,2H3v0C3,6.9,3.9,6,5,6z")
\ No newline at end of file
diff --git a/src/pages/widgets/links.pug b/src/pages/widgets/links.pug
index 8daf48ba..4d6fdd74 100644
--- a/src/pages/widgets/links.pug
+++ b/src/pages/widgets/links.pug
@@ -1,11 +1,9 @@
+include ../widgets/icons.pug
+
 mixin links(service)
     section.links
         .title
-            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")
+            +general
             a(href="../general/general.html" data-localise="__MSG_general__" class=service == "general" ? "selected" : "") General
 
         .title 
@@ -41,10 +39,7 @@ mixin links(service)
             a(href="../wikipedia/wikipedia.html" data-localise="__MSG_wikipedia__" class=service == "wikipedia" ? "selected" : "") Wikipedia
 
         .title 
-            svg(xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1770 1000" fill="currentColor")
-                circle(cx="500" cy="500" r="500")
-                ellipse(ry="475" rx="250" cy="501" cx="1296")
-                ellipse(cx="1682" cy="502" rx="88" ry="424")
+            +medium
             a(href="../medium/medium.html" data-localise="__MSG_medium__" class=service == "medium" ? "selected" : "") Medium
 
         .title 
@@ -56,21 +51,17 @@ mixin links(service)
             a(href="../lbry/lbry.html" data-localise="__MSG_lbry__" class=service == "lbry" ? "selected" : "") LBRY/Odysee
 
         .title 
-            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")
+            +search
             a(href="../search/search.html" data-localise="__MSG_search__" class=service == "search" ? "selected" : "") Search
 
         .title 
-            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")
+            +translate
             a(href="../translate/translate.html" data-localise="__MSG_translate__" class=service == "translate" ? "selected" : "") Translate
 
         .title 
-            svg(xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 0 24 24" width="24px" fill="currentColor")
-                path(d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z")
+            +maps
             a(href="../maps/maps.html" data-localise="__MSG_maps__" class=service == "maps" ? "selected" : "") Maps
 
         .title 
-            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")
+            +send
             a(href="../sendTargets/sendTargets.html" data-localise="__MSG_sendFiles__" class=service == "sendTargets" ? "selected" : "") Send Files
\ No newline at end of file