diff --git a/package-lock.json b/package-lock.json
index 01329db..26b0878 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -3802,9 +3802,9 @@
 			}
 		},
 		"node_modules/cookie": {
-			"version": "0.4.2",
-			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
-			"integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+			"version": "0.7.1",
+			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz",
+			"integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==",
 			"peer": true,
 			"engines": {
 				"node": ">= 0.6"
@@ -4338,9 +4338,9 @@
 			}
 		},
 		"node_modules/engine.io": {
-			"version": "6.5.5",
-			"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
-			"integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+			"version": "6.6.2",
+			"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz",
+			"integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==",
 			"peer": true,
 			"dependencies": {
 				"@types/cookie": "^0.4.1",
@@ -4348,7 +4348,7 @@
 				"@types/node": ">=10.0.0",
 				"accepts": "~1.3.4",
 				"base64id": "2.0.0",
-				"cookie": "~0.4.1",
+				"cookie": "~0.7.2",
 				"cors": "~2.8.5",
 				"debug": "~4.3.1",
 				"engine.io-parser": "~5.2.1",
@@ -4406,13 +4406,22 @@
 				"node": ">=10.0.0"
 			}
 		},
+		"node_modules/engine.io/node_modules/cookie": {
+			"version": "0.7.2",
+			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
+			"integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
+			"peer": true,
+			"engines": {
+				"node": ">= 0.6"
+			}
+		},
 		"node_modules/engine.io/node_modules/debug": {
-			"version": "4.3.4",
-			"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-			"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+			"version": "4.3.7",
+			"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+			"integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
 			"peer": true,
 			"dependencies": {
-				"ms": "2.1.2"
+				"ms": "^2.1.3"
 			},
 			"engines": {
 				"node": ">=6.0"
@@ -4424,9 +4433,9 @@
 			}
 		},
 		"node_modules/engine.io/node_modules/ms": {
-			"version": "2.1.2",
-			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-			"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+			"version": "2.1.3",
+			"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+			"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
 			"peer": true
 		},
 		"node_modules/enhanced-resolve": {
@@ -5072,9 +5081,9 @@
 			}
 		},
 		"node_modules/express": {
-			"version": "4.21.0",
-			"resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz",
-			"integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==",
+			"version": "4.21.1",
+			"resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz",
+			"integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==",
 			"peer": true,
 			"dependencies": {
 				"accepts": "~1.3.8",
@@ -5082,7 +5091,7 @@
 				"body-parser": "1.20.3",
 				"content-disposition": "0.5.4",
 				"content-type": "~1.0.4",
-				"cookie": "0.6.0",
+				"cookie": "0.7.1",
 				"cookie-signature": "1.0.6",
 				"debug": "2.6.9",
 				"depd": "2.0.0",
@@ -5125,15 +5134,6 @@
 				"node": ">=12.0.0"
 			}
 		},
-		"node_modules/express/node_modules/cookie": {
-			"version": "0.6.0",
-			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
-			"integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
-			"peer": true,
-			"engines": {
-				"node": ">= 0.6"
-			}
-		},
 		"node_modules/express/node_modules/debug": {
 			"version": "2.6.9",
 			"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
@@ -13738,16 +13738,16 @@
 			}
 		},
 		"node_modules/socket.io": {
-			"version": "4.7.5",
-			"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz",
-			"integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==",
+			"version": "4.8.0",
+			"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.0.tgz",
+			"integrity": "sha512-8U6BEgGjQOfGz3HHTYaC/L1GaxDCJ/KM0XTkJly0EhZ5U/du9uNEZy4ZgYzEzIqlx2CMm25CrCqr1ck899eLNA==",
 			"peer": true,
 			"dependencies": {
 				"accepts": "~1.3.4",
 				"base64id": "~2.0.0",
 				"cors": "~2.8.5",
 				"debug": "~4.3.2",
-				"engine.io": "~6.5.2",
+				"engine.io": "~6.6.0",
 				"socket.io-adapter": "~2.5.2",
 				"socket.io-parser": "~4.2.4"
 			},
@@ -18025,9 +18025,9 @@
 			}
 		},
 		"cookie": {
-			"version": "0.4.2",
-			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz",
-			"integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==",
+			"version": "0.7.1",
+			"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz",
+			"integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==",
 			"peer": true
 		},
 		"cookie-signature": {
@@ -18437,9 +18437,9 @@
 			}
 		},
 		"engine.io": {
-			"version": "6.5.5",
-			"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.5.tgz",
-			"integrity": "sha512-C5Pn8Wk+1vKBoHghJODM63yk8MvrO9EWZUfkAt5HAqIgPE4/8FF0PEGHXtEd40l223+cE5ABWuPzm38PHFXfMA==",
+			"version": "6.6.2",
+			"resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.6.2.tgz",
+			"integrity": "sha512-gmNvsYi9C8iErnZdVcJnvCpSKbWTt1E8+JZo8b+daLninywUWi5NQ5STSHZ9rFjFO7imNcvb8Pc5pe/wMR5xEw==",
 			"peer": true,
 			"requires": {
 				"@types/cookie": "^0.4.1",
@@ -18447,26 +18447,32 @@
 				"@types/node": ">=10.0.0",
 				"accepts": "~1.3.4",
 				"base64id": "2.0.0",
-				"cookie": "~0.4.1",
+				"cookie": "~0.7.2",
 				"cors": "~2.8.5",
 				"debug": "~4.3.1",
 				"engine.io-parser": "~5.2.1",
 				"ws": "~8.17.1"
 			},
 			"dependencies": {
+				"cookie": {
+					"version": "0.7.2",
+					"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz",
+					"integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==",
+					"peer": true
+				},
 				"debug": {
-					"version": "4.3.4",
-					"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
-					"integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+					"version": "4.3.7",
+					"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+					"integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
 					"peer": true,
 					"requires": {
-						"ms": "2.1.2"
+						"ms": "^2.1.3"
 					}
 				},
 				"ms": {
-					"version": "2.1.2",
-					"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
-					"integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+					"version": "2.1.3",
+					"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+					"integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
 					"peer": true
 				}
 			}
@@ -18983,9 +18989,9 @@
 			}
 		},
 		"express": {
-			"version": "4.21.0",
-			"resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz",
-			"integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==",
+			"version": "4.21.1",
+			"resolved": "https://registry.npmjs.org/express/-/express-4.21.1.tgz",
+			"integrity": "sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==",
 			"peer": true,
 			"requires": {
 				"accepts": "~1.3.8",
@@ -18993,7 +18999,7 @@
 				"body-parser": "1.20.3",
 				"content-disposition": "0.5.4",
 				"content-type": "~1.0.4",
-				"cookie": "0.6.0",
+				"cookie": "0.7.1",
 				"cookie-signature": "1.0.6",
 				"debug": "2.6.9",
 				"depd": "2.0.0",
@@ -19021,12 +19027,6 @@
 				"vary": "~1.1.2"
 			},
 			"dependencies": {
-				"cookie": {
-					"version": "0.6.0",
-					"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
-					"integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
-					"peer": true
-				},
 				"debug": {
 					"version": "2.6.9",
 					"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
@@ -25128,16 +25128,16 @@
 			"integrity": "sha512-iVICrxOzCynf/SNaBQCw34eM9jROU/s5rzIhpOvzhzuYHfJR/DhZfDkXiZSgKXfgv26HT3Yni3AV/DGw0cGnnw=="
 		},
 		"socket.io": {
-			"version": "4.7.5",
-			"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz",
-			"integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==",
+			"version": "4.8.0",
+			"resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.8.0.tgz",
+			"integrity": "sha512-8U6BEgGjQOfGz3HHTYaC/L1GaxDCJ/KM0XTkJly0EhZ5U/du9uNEZy4ZgYzEzIqlx2CMm25CrCqr1ck899eLNA==",
 			"peer": true,
 			"requires": {
 				"accepts": "~1.3.4",
 				"base64id": "~2.0.0",
 				"cors": "~2.8.5",
 				"debug": "~4.3.2",
-				"engine.io": "~6.5.2",
+				"engine.io": "~6.6.0",
 				"socket.io-adapter": "~2.5.2",
 				"socket.io-parser": "~4.2.4"
 			},