diff --git a/package-lock.json b/package-lock.json
index c3564ceb23bcbcedc3de1e9fc7d7cdddd8f6aaf4..1c180b66e8484972de19f57566573987d780c325 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1085,7 +1085,8 @@
     "base64-js": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz",
-      "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g=="
+      "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==",
+      "dev": true
     },
     "base64id": {
       "version": "2.0.0",
@@ -1315,15 +1316,6 @@
         "node-int64": "^0.4.0"
       }
     },
-    "buffer": {
-      "version": "5.4.3",
-      "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.4.3.tgz",
-      "integrity": "sha512-zvj65TkFeIt3i6aj5bIvJDzjjQQGs4o/sNoezg1F1kYap9Nu2jcUdpwzRSJTHMMzG0H7bZkn4rNQpImhuxWX2A==",
-      "requires": {
-        "base64-js": "^1.0.2",
-        "ieee754": "^1.1.4"
-      }
-    },
     "buffer-from": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
@@ -2906,6 +2898,14 @@
         "map-cache": "^0.2.2"
       }
     },
+    "freeice": {
+      "version": "2.2.2",
+      "resolved": "https://registry.npmjs.org/freeice/-/freeice-2.2.2.tgz",
+      "integrity": "sha512-XNoIxDHufqPIBSLpp4IrFPnoc+hv/0RwdOGhIoggIDC2ZKf5r6OoixbeoFJSmZOAq2aYiEUArhuQ8zVVrM5C4w==",
+      "requires": {
+        "normalice": "^1.0.0"
+      }
+    },
     "fresh": {
       "version": "0.5.2",
       "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
@@ -3835,7 +3835,8 @@
     "ieee754": {
       "version": "1.1.13",
       "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz",
-      "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg=="
+      "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==",
+      "dev": true
     },
     "iferr": {
       "version": "0.1.5",
@@ -4880,15 +4881,13 @@
     "liowebrtc": {
       "version": "file:src/liowebrtc",
       "requires": {
-        "attachmediastream": "^2.1.0",
+        "attachmediastream": "^2.0.4",
         "filetransfer": "^2.0.4",
         "hark": "^1.2.0",
         "mockconsole": "0.0.1",
-        "pako": "^1.0.10",
         "rtcpeerconnection": "file:src/rtcpeerconnection",
         "socket.io-client": "^2.3.0",
-        "webrtc-adapter": "^7.3.0",
-        "what-the-pack": "^2.0.3",
+        "webrtc-adapter": "^4.0.0",
         "wildemitter": "^1.2.0"
       }
     },
@@ -5675,7 +5674,8 @@
     "pako": {
       "version": "1.0.10",
       "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz",
-      "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw=="
+      "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==",
+      "dev": true
     },
     "parallel-transform": {
       "version": "1.2.0",
@@ -5877,11 +5877,6 @@
       "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==",
       "dev": true
     },
-    "pretty-bytes": {
-      "version": "5.3.0",
-      "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.3.0.tgz",
-      "integrity": "sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg=="
-    },
     "pretty-format": {
       "version": "24.9.0",
       "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz",
@@ -6597,7 +6592,7 @@
     "signalbuddy": {
       "version": "file:src/signalbuddy",
       "requires": {
-        "normalice": "^1.0.1",
+        "freeice": "^2.2.2",
         "socket.io": "^2.3.0",
         "uuid": "^3.3.3"
       }
@@ -7866,15 +7861,6 @@
         "sdp": "^2.10.0"
       }
     },
-    "what-the-pack": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/what-the-pack/-/what-the-pack-2.0.3.tgz",
-      "integrity": "sha512-vJFrS6U6acWUgkKu9dLuMsQnnHEzIpop1VDMc142h+zU+jUcS+FZlRO/BDJ9/S9cvp2sQWygImBDwl0WN9aadw==",
-      "requires": {
-        "buffer": "^5.2.1",
-        "pretty-bytes": "^5.1.0"
-      }
-    },
     "whatwg-encoding": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz",
@@ -8109,10 +8095,7 @@
       "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk="
     },
     "yjs": {
-      "version": "file:src/yjs",
-      "requires": {
-        "debug": "^2.6.3"
-      }
+      "version": "file:src/yjs"
     }
   }
 }
diff --git a/src/app.js b/src/app.js
index 6c613d394e039961bbb63ef70462d2df2aadca23..49ad284ad7c992df7c6f2762b60a82f61b941553 100644
--- a/src/app.js
+++ b/src/app.js
@@ -124,7 +124,7 @@ function hideElement(element) {
 HTML.picker.addEventListener("change", () => {
   const paletteColour = event.target.value
   HTML.rectangle.style.backgroundColor = paletteColour
-  HTML.labelColour.style.backgroundColor = paletteColour
+  HTML.labelColours.style.backgroundColor = paletteColour
   canvas.setStrokeColour(paletteColour)
 })
 
@@ -147,16 +147,8 @@ x.addListener(() => {
   }
 })
 
-function showElement(element) {
-  element.style.display = "block"
-}
-
-function hideElement(element) {
-  element.style.display = "none"
-}
-
 HTML.picker.addEventListener("change", () => {
-  var paletteColour = event.target.value
+  const paletteColour = event.target.value
   HTML.rectangle.style.backgroundColor = paletteColour
   HTML.labelColours.style.backgroundColor = paletteColour
   canvas.setStrokeColour(paletteColour)
diff --git a/src/elements.js b/src/elements.js
index 1b63ba895af72ac974f9341f600965e762632f7a..cf472b7cb559dd0b80284f3f8b1e6ddac9735a30 100644
--- a/src/elements.js
+++ b/src/elements.js
@@ -26,8 +26,6 @@ export const palette = document.getElementById("palette")
 export const rectangle = document.getElementById("rectangle")
 export const wheel = document.getElementById("wheel")
 export const picker = document.getElementById("other-colours")
-export const labelColour = document.getElementById("colours")
 export const slider = document.getElementById("range")
 export const output = document.getElementById("value")
-export const picker = document.getElementById("other-colours")
 export const labelColours = document.getElementById("colours")
diff --git a/src/liowebrtc b/src/liowebrtc
index 9b066b28a56a902b7ba0fe1532508bf28f269604..545380d3c27797799f3013ad112f9f17c64bc8c7 160000
--- a/src/liowebrtc
+++ b/src/liowebrtc
@@ -1 +1 @@
-Subproject commit 9b066b28a56a902b7ba0fe1532508bf28f269604
+Subproject commit 545380d3c27797799f3013ad112f9f17c64bc8c7