diff --git a/package-lock.json b/package-lock.json
index 48910fc..49dd69a 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -45,7 +45,7 @@
         "sdp": "^3.2.0",
         "secure-file-transfer": "^0.0.7",
         "streamsaver": "^2.0.6",
-        "trystero": "^0.15.0",
+        "trystero": "^0.18.0",
         "typeface-public-sans": "^1.1.13",
         "typeface-roboto": "^1.1.13",
         "typescript": "^5.4.2",
@@ -124,34 +124,34 @@
       }
     },
     "node_modules/@achingbrain/nat-port-mapper/node_modules/@libp2p/interface": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-      "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
       "dependencies": {
-        "@multiformats/multiaddr": "^12.1.10",
+        "@multiformats/multiaddr": "^12.1.14",
         "it-pushable": "^3.2.3",
         "it-stream-types": "^2.0.1",
-        "multiformats": "^13.0.0",
+        "multiformats": "^13.1.0",
         "progress-events": "^1.0.0",
-        "uint8arraylist": "^2.4.7"
+        "uint8arraylist": "^2.4.8"
       }
     },
     "node_modules/@achingbrain/nat-port-mapper/node_modules/@libp2p/logger": {
-      "version": "4.0.5",
-      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.5.tgz",
-      "integrity": "sha512-cXETMNZINnxeQBlfQ2S4di92FDDU89R7RHagrpebGrM7oLl5nf/Mw6myc23kGaM3/2YG3ko2rl9sYjemu0azTA==",
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+      "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
       "dependencies": {
-        "@libp2p/interface": "^1.1.2",
-        "@multiformats/multiaddr": "^12.1.10",
+        "@libp2p/interface": "^1.1.4",
+        "@multiformats/multiaddr": "^12.1.14",
         "debug": "^4.3.4",
-        "interface-datastore": "^8.2.0",
-        "multiformats": "^13.0.0"
+        "interface-datastore": "^8.2.11",
+        "multiformats": "^13.1.0"
       }
     },
     "node_modules/@achingbrain/nat-port-mapper/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/@achingbrain/ssdp": {
       "version": "4.0.6",
@@ -2176,9 +2176,9 @@
       "dev": true
     },
     "node_modules/@babel/runtime": {
-      "version": "7.23.9",
-      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz",
-      "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==",
+      "version": "7.24.0",
+      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz",
+      "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==",
       "dependencies": {
         "regenerator-runtime": "^0.14.0"
       },
@@ -5744,15 +5744,6 @@
         "uint8arraylist": "^2.4.3"
       }
     },
-    "node_modules/@libp2p/interface-keys": {
-      "version": "1.0.8",
-      "resolved": "https://registry.npmjs.org/@libp2p/interface-keys/-/interface-keys-1.0.8.tgz",
-      "integrity": "sha512-CJ1SlrwuoHMquhEEWS77E+4vv7hwB7XORkqzGQrPQmA9MRdIEZRS64bA4JqCLUDa4ltH0l+U1vp0oZHLT67NEA==",
-      "engines": {
-        "node": ">=16.0.0",
-        "npm": ">=7.0.0"
-      }
-    },
     "node_modules/@libp2p/interfaces": {
       "version": "3.3.2",
       "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.3.2.tgz",
@@ -5808,24 +5799,45 @@
       }
     },
     "node_modules/@libp2p/multistream-select": {
-      "version": "4.0.10",
-      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
-      "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+      "version": "5.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-5.1.4.tgz",
+      "integrity": "sha512-hFK831x8SRQwWO6sZ0PLdLMJdxSw/HFWTZLqwFGsQbgfgBd+Via3Fztb7xe6VRqHpnAwZkVujP+iubAI7AghGg==",
       "dependencies": {
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/logger": "^3.1.0",
-        "abortable-iterator": "^5.0.1",
-        "it-first": "^3.0.1",
-        "it-handshake": "^4.1.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-merge": "^3.0.0",
-        "it-pipe": "^3.0.1",
-        "it-pushable": "^3.2.0",
-        "it-reader": "^6.0.1",
+        "@libp2p/interface": "^1.1.4",
+        "it-length-prefixed": "^9.0.4",
+        "it-length-prefixed-stream": "^1.1.6",
         "it-stream-types": "^2.0.1",
-        "uint8-varint": "^2.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "p-defer": "^4.0.0",
+        "race-signal": "^1.0.2",
+        "uint8-varint": "^2.0.4",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/multistream-select/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@libp2p/multistream-select/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@libp2p/multistream-select/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
       }
     },
     "node_modules/@libp2p/peer-collections": {
@@ -5848,54 +5860,232 @@
       }
     },
     "node_modules/@libp2p/peer-id-factory": {
-      "version": "3.0.11",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
-      "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-4.0.7.tgz",
+      "integrity": "sha512-ueSjkodKPhYw7C0ysRGscY+e9vJ+ixpmJvi5w8vbnOn0ex9cAT+9S7DGL03d8vGMAT3xjEbUsI2GpF17uZ9Rpg==",
       "dependencies": {
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/peer-id": "^3.0.6",
-        "multiformats": "^12.0.1",
-        "protons-runtime": "^5.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-id-factory/node_modules/@libp2p/crypto": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+      "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@noble/curves": "^1.3.0",
+        "@noble/hashes": "^1.3.3",
+        "asn1js": "^3.0.5",
+        "multiformats": "^13.1.0",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-id-factory/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@libp2p/peer-id-factory/node_modules/@libp2p/peer-id": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+      "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-id-factory/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@libp2p/peer-id-factory/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
       }
     },
     "node_modules/@libp2p/peer-record": {
-      "version": "6.0.12",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
-      "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+      "version": "7.0.10",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-7.0.10.tgz",
+      "integrity": "sha512-njVSa2mMcGqQoCnhmZQOadHIQMsO52wqKO6fP1On8sVRmb9yXNGBkZ+b5pRXjjPzUpJeUmC+/SZHpeLqpdpPMQ==",
       "dependencies": {
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/utils": "^4.0.7",
-        "@multiformats/multiaddr": "^12.1.5",
-        "protons-runtime": "^5.0.0",
-        "uint8-varint": "^2.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/utils": "^5.2.6",
+        "@multiformats/multiaddr": "^12.1.14",
+        "protons-runtime": "^5.4.0",
+        "uint8-varint": "^2.0.4",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/@libp2p/crypto": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+      "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@noble/curves": "^1.3.0",
+        "@noble/hashes": "^1.3.3",
+        "asn1js": "^3.0.5",
+        "multiformats": "^13.1.0",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/@libp2p/logger": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+      "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@multiformats/multiaddr": "^12.1.14",
+        "debug": "^4.3.4",
+        "interface-datastore": "^8.2.11",
+        "multiformats": "^13.1.0"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/@libp2p/peer-id": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+      "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/@libp2p/utils": {
+      "version": "5.2.6",
+      "resolved": "https://registry.npmjs.org/@libp2p/utils/-/utils-5.2.6.tgz",
+      "integrity": "sha512-2Y2zi2TsyhOl+8TH27YZiEJWfdrKRogTzYRxQUKNTX03izXpUcwGsFLPjK7nR39LzYQrQ8si1Kx2ayA3zk7BKg==",
+      "dependencies": {
+        "@chainsafe/is-ip": "^2.0.2",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/logger": "^4.0.7",
+        "@multiformats/multiaddr": "^12.1.14",
+        "@multiformats/multiaddr-matcher": "^1.1.2",
+        "delay": "^6.0.0",
+        "get-iterator": "^2.0.1",
+        "is-loopback-addr": "^2.0.2",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "netmask": "^2.0.2",
+        "p-defer": "^4.0.0",
+        "race-event": "^1.2.0",
+        "race-signal": "^1.0.2",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@libp2p/peer-record/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@libp2p/peer-record/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
       }
     },
     "node_modules/@libp2p/peer-store": {
-      "version": "9.0.12",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
-      "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+      "version": "10.0.11",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-10.0.11.tgz",
+      "integrity": "sha512-egcEzHRQUTW7mQuLPyN/y0Rtunk8zFoxLdTRNjJTrvQRmkCeLIDZ8VsYB0KF7feA85nbpRFR62dVjN46I65yFA==",
       "dependencies": {
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/logger": "^3.1.0",
-        "@libp2p/peer-collections": "^4.0.8",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/peer-id-factory": "^3.0.8",
-        "@libp2p/peer-record": "^6.0.9",
-        "@multiformats/multiaddr": "^12.1.5",
-        "interface-datastore": "^8.2.0",
-        "it-all": "^3.0.2",
-        "mortice": "^3.0.1",
-        "multiformats": "^12.0.1",
-        "protons-runtime": "^5.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-collections": "^5.1.7",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/peer-record": "^7.0.10",
+        "@multiformats/multiaddr": "^12.1.14",
+        "interface-datastore": "^8.2.11",
+        "it-all": "^3.0.4",
+        "mortice": "^3.0.4",
+        "multiformats": "^13.1.0",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-store/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@libp2p/peer-store/node_modules/@libp2p/peer-collections": {
+      "version": "5.1.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-collections/-/peer-collections-5.1.7.tgz",
+      "integrity": "sha512-9XXWSJtC7XvbH32h2bK3fygyzd4B2/JeWzsjX8cUDtO69jKNiVJglB8UqajZBuwLZSOQG5aRNWK4RWXJDrsh/w==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7"
+      }
+    },
+    "node_modules/@libp2p/peer-store/node_modules/@libp2p/peer-id": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+      "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@libp2p/peer-store/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@libp2p/peer-store/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
       }
     },
     "node_modules/@libp2p/pubsub": {
@@ -5919,6 +6109,32 @@
         "uint8arrays": "^4.0.6"
       }
     },
+    "node_modules/@libp2p/pubsub/node_modules/p-queue": {
+      "version": "7.4.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "dependencies": {
+        "eventemitter3": "^5.0.1",
+        "p-timeout": "^5.0.2"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@libp2p/pubsub/node_modules/p-timeout": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+      "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
     "node_modules/@libp2p/utils": {
       "version": "4.0.7",
       "resolved": "https://registry.npmjs.org/@libp2p/utils/-/utils-4.0.7.tgz",
@@ -6259,6 +6475,33 @@
         }
       }
     },
+    "node_modules/@multiformats/dns": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/@multiformats/dns/-/dns-1.0.5.tgz",
+      "integrity": "sha512-qP42WXdmK5D0KTMervvkE9N1l+1WbReMk9UwCmvE6iPterZgtNcNO5LQVfUrl0xqajQG9wDlom+a8YwA+sa5KQ==",
+      "dependencies": {
+        "@types/dns-packet": "^5.6.5",
+        "buffer": "^6.0.3",
+        "dns-packet": "^5.6.1",
+        "hashlru": "^2.3.0",
+        "p-queue": "^8.0.1",
+        "progress-events": "^1.0.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/@multiformats/dns/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@multiformats/dns/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
+      }
+    },
     "node_modules/@multiformats/mafmt": {
       "version": "12.1.6",
       "resolved": "https://registry.npmjs.org/@multiformats/mafmt/-/mafmt-12.1.6.tgz",
@@ -6268,23 +6511,23 @@
       }
     },
     "node_modules/@multiformats/multiaddr": {
-      "version": "12.1.14",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.1.14.tgz",
-      "integrity": "sha512-1C0Mo73chzu7pTzTquuKs5vUtw70jhqg1i6pUNznGb0WV6RFa6vyB+D697Os5+cLx+DiItrAY6VzMtlGQsMzYg==",
+      "version": "12.2.1",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz",
+      "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==",
       "dependencies": {
         "@chainsafe/is-ip": "^2.0.1",
         "@chainsafe/netmask": "^2.0.0",
         "@libp2p/interface": "^1.0.0",
-        "dns-over-http-resolver": "^3.0.2",
+        "@multiformats/dns": "^1.0.3",
         "multiformats": "^13.0.0",
         "uint8-varint": "^2.0.1",
         "uint8arrays": "^5.0.0"
       }
     },
     "node_modules/@multiformats/multiaddr-matcher": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-matcher/-/multiaddr-matcher-1.1.2.tgz",
-      "integrity": "sha512-O7hO+TYsweMjNCqTYKYn8iki2GXA46mxmgqnsOb2Wpr6ca4dRGnPldWTai2WwTeZpQyRJ/7GE+N9zPTfP0xE+Q==",
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-matcher/-/multiaddr-matcher-1.2.0.tgz",
+      "integrity": "sha512-LH6yR7h3HSNKcxuvvi2UpLuowuVkYC6H9Y3jqmKuTai8XtKnXtW6NcDZFD/ooTBY+H4yX/scoJpjOalHrk5qdQ==",
       "dependencies": {
         "@chainsafe/is-ip": "^2.0.1",
         "@multiformats/multiaddr": "^12.0.0",
@@ -6292,44 +6535,40 @@
       }
     },
     "node_modules/@multiformats/multiaddr-matcher/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/@multiformats/multiaddr-to-uri": {
-      "version": "9.0.7",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.7.tgz",
-      "integrity": "sha512-i3ldtPMN6XJt+MCi34hOl0wGuGEHfWWMw6lmNag5BpckPwPTf9XGOOFMmh7ed/uO3Vjah/g173iOe61HTQVoBA==",
+      "version": "9.0.8",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.8.tgz",
+      "integrity": "sha512-4eiN5iEiQfy2A98BxekUfW410L/ivg0sgjYSgSqmklnrBhK+QyMz4yqgfkub8xDTXOc7O5jp4+LVyM3ZqMeWNw==",
       "dependencies": {
         "@multiformats/multiaddr": "^12.0.0"
-      },
-      "engines": {
-        "node": ">=16.0.0",
-        "npm": ">=7.0.0"
       }
     },
     "node_modules/@multiformats/multiaddr/node_modules/@libp2p/interface": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-      "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
       "dependencies": {
-        "@multiformats/multiaddr": "^12.1.10",
+        "@multiformats/multiaddr": "^12.1.14",
         "it-pushable": "^3.2.3",
         "it-stream-types": "^2.0.1",
-        "multiformats": "^13.0.0",
+        "multiformats": "^13.1.0",
         "progress-events": "^1.0.0",
-        "uint8arraylist": "^2.4.7"
+        "uint8arraylist": "^2.4.8"
       }
     },
     "node_modules/@multiformats/multiaddr/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/@multiformats/multiaddr/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -6352,31 +6591,20 @@
       }
     },
     "node_modules/@noble/curves": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz",
-      "integrity": "sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==",
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz",
+      "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==",
       "dependencies": {
-        "@noble/hashes": "1.3.3"
+        "@noble/hashes": "1.4.0"
       },
       "funding": {
         "url": "https://paulmillr.com/funding/"
       }
     },
-    "node_modules/@noble/ed25519": {
-      "version": "1.7.3",
-      "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-1.7.3.tgz",
-      "integrity": "sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ==",
-      "funding": [
-        {
-          "type": "individual",
-          "url": "https://paulmillr.com/funding/"
-        }
-      ]
-    },
     "node_modules/@noble/hashes": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz",
-      "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==",
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz",
+      "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==",
       "engines": {
         "node": ">= 16"
       },
@@ -8997,6 +9225,14 @@
         "@types/ms": "*"
       }
     },
+    "node_modules/@types/dns-packet": {
+      "version": "5.6.5",
+      "resolved": "https://registry.npmjs.org/@types/dns-packet/-/dns-packet-5.6.5.tgz",
+      "integrity": "sha512-qXOC7XLOEe43ehtWJCMnQXvgcIpv6rPmQ1jXT98Ad8A3TB1Ue50jsCbSSSyuazScEuZ/Q026vHbrOTVkmwA+7Q==",
+      "dependencies": {
+        "@types/node": "*"
+      }
+    },
     "node_modules/@types/estree": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
@@ -9206,6 +9442,20 @@
         "@types/react": "*"
       }
     },
+    "node_modules/@types/readable-stream": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-4.0.10.tgz",
+      "integrity": "sha512-AbUKBjcC8SHmImNi4yK2bbjogQlkFSg7shZCcicxPQapniOlajG8GCc39lvXzCWX4lLRRs7DM3VAeSlqmEVZUA==",
+      "dependencies": {
+        "@types/node": "*",
+        "safe-buffer": "~5.1.1"
+      }
+    },
+    "node_modules/@types/readable-stream/node_modules/safe-buffer": {
+      "version": "5.1.2",
+      "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+      "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+    },
     "node_modules/@types/resolve": {
       "version": "1.17.1",
       "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
@@ -9849,18 +10099,197 @@
         "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
       }
     },
-    "node_modules/@waku/core": {
-      "version": "0.0.25",
-      "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.25.tgz",
-      "integrity": "sha512-YG6cRo82CaU92bf85hrN1s5FAtHlojaJ6I3pzOzRl7HAhhGVhQvfNgc1XHU1RiVkbw17ug8AapFPSy+A36gjvQ==",
+    "node_modules/@waku/dns-discovery": {
+      "version": "0.0.20",
+      "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.20.tgz",
+      "integrity": "sha512-JnzR/B3iT33aWDg75lGkzM+4eXqZP5n/BlnjMyiXCXX+Du4arRveBg+812ZXZVVMQGLiM/aqM/JOPefKbTegOw==",
+      "dependencies": {
+        "@waku/enr": "0.0.20",
+        "@waku/utils": "0.0.14",
+        "debug": "^4.3.4",
+        "dns-query": "^0.11.2",
+        "hi-base32": "^0.5.1",
+        "uint8arrays": "^4.0.4"
+      },
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@waku/enr": {
+      "version": "0.0.20",
+      "resolved": "https://registry.npmjs.org/@waku/enr/-/enr-0.0.20.tgz",
+      "integrity": "sha512-dzTeESBxagggAaJ6xMCEaiB1PdNN+rLFuLF3mC/0iSgb6Ax2nl5lJmSVTsZpdkPuwiv+sZzt5KgaKzjQEvp0QA==",
+      "dependencies": {
+        "@ethersproject/rlp": "^5.7.0",
+        "@libp2p/crypto": "^3.0.2",
+        "@libp2p/peer-id": "^3.0.3",
+        "@multiformats/multiaddr": "^12.0.0",
+        "@noble/secp256k1": "^1.7.1",
+        "@waku/utils": "0.0.14",
+        "debug": "^4.3.4",
+        "js-sha3": "^0.9.2"
+      },
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@waku/enr/node_modules/@libp2p/crypto": {
+      "version": "3.0.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-3.0.4.tgz",
+      "integrity": "sha512-FzSwBo+RJOUzdzEwug5ZL4dAGKwEBWTLzj+EmUTHHY6c87+oLh571DQk/w0oYObSD9hYbcKePgSBaZeBx0JaZg==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.1",
+        "@noble/curves": "^1.1.0",
+        "@noble/hashes": "^1.3.1",
+        "multiformats": "^13.0.0",
+        "node-forge": "^1.1.0",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^5.0.0"
+      }
+    },
+    "node_modules/@waku/enr/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/@waku/enr/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/@waku/enr/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
+      }
+    },
+    "node_modules/@waku/interfaces": {
+      "version": "0.0.21",
+      "resolved": "https://registry.npmjs.org/@waku/interfaces/-/interfaces-0.0.21.tgz",
+      "integrity": "sha512-6QbXx9IEBz9muSzjrnbaoXnjrMQIu1WOUyhMB6ZgOobgGWluwX/WOPuGGCpqvI7p5WhO0gaziphGVLdopdmRyw==",
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@waku/peer-exchange": {
+      "version": "0.0.19",
+      "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.19.tgz",
+      "integrity": "sha512-T6eGHidBj49Lkw0fy3gKXbdJiyQ/0b6WYp8ZgJUySmtFCMmFQUEECbdHLx5iJFtocYmbGYFt04f+47dhoCyhog==",
+      "dependencies": {
+        "@libp2p/interfaces": "^3.3.2",
+        "@waku/core": "0.0.26",
+        "@waku/enr": "0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
+        "debug": "^4.3.4",
+        "it-all": "^3.0.4",
+        "it-length-prefixed": "^9.0.1",
+        "it-pipe": "^3.0.1"
+      },
+      "engines": {
+        "node": ">=18"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/@libp2p/multistream-select": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+      "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "abortable-iterator": "^5.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-merge": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-pushable": "^3.2.0",
+        "it-reader": "^6.0.1",
+        "it-stream-types": "^2.0.1",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/@libp2p/peer-id-factory": {
+      "version": "3.0.11",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+      "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/@libp2p/peer-record": {
+      "version": "6.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+      "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/multiaddr": "^12.1.5",
+        "protons-runtime": "^5.0.0",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/@libp2p/peer-store": {
+      "version": "9.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+      "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@multiformats/multiaddr": "^12.1.5",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "mortice": "^3.0.1",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/@waku/core": {
+      "version": "0.0.26",
+      "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+      "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
       "dependencies": {
         "@noble/hashes": "^1.3.2",
-        "@waku/enr": "^0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
+        "@waku/enr": "^0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
         "debug": "^4.3.4",
-        "it-all": "^3.0.3",
+        "it-all": "^3.0.4",
         "it-length-prefixed": "^9.0.1",
         "it-pipe": "^3.0.1",
         "p-event": "^6.0.0",
@@ -9880,7 +10309,88 @@
         }
       }
     },
-    "node_modules/@waku/core/node_modules/uuid": {
+    "node_modules/@waku/peer-exchange/node_modules/libp2p": {
+      "version": "0.46.21",
+      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+      "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+      "peer": true,
+      "dependencies": {
+        "@achingbrain/nat-port-mapper": "^1.0.9",
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/interface-internal": "^0.1.9",
+        "@libp2p/keychain": "^3.0.8",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/multistream-select": "^4.0.6",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@libp2p/peer-store": "^9.0.9",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/mafmt": "^12.1.2",
+        "@multiformats/multiaddr": "^12.1.5",
+        "@multiformats/multiaddr-matcher": "^1.0.0",
+        "any-signal": "^4.1.1",
+        "datastore-core": "^9.0.1",
+        "delay": "^6.0.0",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "it-drain": "^3.0.2",
+        "it-filter": "^3.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-map": "^3.0.3",
+        "it-merge": "^3.0.0",
+        "it-pair": "^2.0.6",
+        "it-parallel": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-protobuf-stream": "^1.0.0",
+        "it-stream-types": "^2.0.1",
+        "merge-options": "^3.0.4",
+        "multiformats": "^12.0.1",
+        "p-defer": "^4.0.0",
+        "p-queue": "^7.3.4",
+        "p-retry": "^6.0.0",
+        "private-ip": "^3.0.0",
+        "protons-runtime": "^5.0.0",
+        "rate-limiter-flexible": "^3.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6",
+        "wherearewe": "^2.0.1",
+        "xsalsa20": "^1.1.0"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/p-queue": {
+      "version": "7.4.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "peer": true,
+      "dependencies": {
+        "eventemitter3": "^5.0.1",
+        "p-timeout": "^5.0.2"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/p-timeout": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+      "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+      "peer": true,
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/peer-exchange/node_modules/uuid": {
       "version": "9.0.1",
       "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
       "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
@@ -9892,153 +10402,457 @@
         "uuid": "dist/bin/uuid"
       }
     },
-    "node_modules/@waku/dns-discovery": {
-      "version": "0.0.19",
-      "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.19.tgz",
-      "integrity": "sha512-K701xc+snE2NrvhORB7Wiyg4WXSGCjzE5LLCTeIaSzlB7eA1HbdU3wC57uiLdChqo495JPqMN/52TQ/m9nAwpQ==",
-      "dependencies": {
-        "@waku/enr": "0.0.19",
-        "@waku/utils": "0.0.13",
-        "debug": "^4.3.4",
-        "dns-query": "^0.11.2",
-        "hi-base32": "^0.5.1",
-        "uint8arrays": "^4.0.4"
-      },
-      "engines": {
-        "node": ">=18"
-      }
-    },
-    "node_modules/@waku/enr": {
-      "version": "0.0.19",
-      "resolved": "https://registry.npmjs.org/@waku/enr/-/enr-0.0.19.tgz",
-      "integrity": "sha512-SomeHKk9kZwYoCNLqSB7SQ9ngnAIdKfQ0JACsc20azdhTxLYAQ6gWrrDFAmXnYwRKNAJfl8A28XThtWnGIiUpA==",
-      "dependencies": {
-        "@ethersproject/rlp": "^5.7.0",
-        "@libp2p/crypto": "^1.0.17",
-        "@libp2p/peer-id": "^3.0.3",
-        "@multiformats/multiaddr": "^12.0.0",
-        "@noble/secp256k1": "^1.7.1",
-        "@waku/utils": "0.0.13",
-        "debug": "^4.3.4",
-        "js-sha3": "^0.9.2"
-      },
-      "engines": {
-        "node": ">=18"
-      }
-    },
-    "node_modules/@waku/enr/node_modules/@libp2p/crypto": {
-      "version": "1.0.17",
-      "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-1.0.17.tgz",
-      "integrity": "sha512-Oeg0Eb/EvAho0gVkOgemXEgrVxWaT3x/DpFgkBdZ9qGxwq75w/E/oPc7souqBz+l1swfz37GWnwV7bIb4Xv5Ag==",
-      "dependencies": {
-        "@libp2p/interface-keys": "^1.0.2",
-        "@libp2p/interfaces": "^3.2.0",
-        "@noble/ed25519": "^1.6.0",
-        "@noble/secp256k1": "^1.5.4",
-        "multiformats": "^11.0.0",
-        "node-forge": "^1.1.0",
-        "protons-runtime": "^5.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.2"
-      },
-      "engines": {
-        "node": ">=16.0.0",
-        "npm": ">=7.0.0"
-      }
-    },
-    "node_modules/@waku/enr/node_modules/multiformats": {
-      "version": "11.0.2",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz",
-      "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg==",
-      "engines": {
-        "node": ">=16.0.0",
-        "npm": ">=7.0.0"
-      }
-    },
-    "node_modules/@waku/interfaces": {
-      "version": "0.0.20",
-      "resolved": "https://registry.npmjs.org/@waku/interfaces/-/interfaces-0.0.20.tgz",
-      "integrity": "sha512-6g2SRCKiAqtxElozXzPNHg68u/lxWSGL1LSXqwA0AAs+WYvK2vYfBM9ceUlbhDEk4ReCUAceUgZgdtdgKGflgA==",
-      "engines": {
-        "node": ">=18"
-      }
-    },
-    "node_modules/@waku/peer-exchange": {
-      "version": "0.0.18",
-      "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.18.tgz",
-      "integrity": "sha512-oRXuASG62SxiVUYdJL7JJAHsa0yORuHHNg1oxL4apVgbnxDXY6SPcvGR1tgpBzMweryPzzx1IqMOZ9tusFCwyA==",
-      "dependencies": {
-        "@libp2p/interfaces": "^3.3.2",
-        "@waku/core": "0.0.25",
-        "@waku/enr": "0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
-        "debug": "^4.3.4",
-        "it-all": "^3.0.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-pipe": "^3.0.1"
-      },
-      "engines": {
-        "node": ">=18"
-      }
-    },
     "node_modules/@waku/proto": {
-      "version": "0.0.5",
-      "resolved": "https://registry.npmjs.org/@waku/proto/-/proto-0.0.5.tgz",
-      "integrity": "sha512-td0WKhUm+pcnpkbhuu5XV79ZcuM+f7b5swNIHHcqCaW5FaJeCtEhXsG8kNrt97kcDAHdr41lxFgQTRDlmAns4A==",
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/@waku/proto/-/proto-0.0.6.tgz",
+      "integrity": "sha512-KSlcpv8BRc/KeChIWfiz7Fska7N3FQhVOsgbV862/RMhj8dCiZPhWtNanuwipfe+GwWz5SMldowipBibukXSNA==",
       "dependencies": {
-        "protons-runtime": "^5.0.0"
+        "protons-runtime": "^5.0.2"
       },
       "engines": {
-        "node": ">=16"
+        "node": ">=18"
       }
     },
     "node_modules/@waku/relay": {
-      "version": "0.0.8",
-      "resolved": "https://registry.npmjs.org/@waku/relay/-/relay-0.0.8.tgz",
-      "integrity": "sha512-H1DXlB7o6qo3dc+qtVFY8g8/jXlyYhSXEIiNU/4eHjCDt0fzl58JdT170QJMDuTQB8LswVzTMRUxFZM5/LTwXw==",
+      "version": "0.0.9",
+      "resolved": "https://registry.npmjs.org/@waku/relay/-/relay-0.0.9.tgz",
+      "integrity": "sha512-BfjPUVh4rIyZ82PPGBhCIv7nnx/WhrqkpkcXmmM38gsRDHDZSNCE28I3ILs2m+IBjBdeaT16BCq0dUVQD84m2A==",
       "dependencies": {
-        "@chainsafe/libp2p-gossipsub": "^10.1.0",
+        "@chainsafe/libp2p-gossipsub": "^10.1.1",
         "@noble/hashes": "^1.3.2",
-        "@waku/core": "0.0.25",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
-        "chai": "^4.3.7",
+        "@waku/core": "0.0.26",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
+        "chai": "^4.3.10",
         "debug": "^4.3.4",
-        "fast-check": "^3.13.1"
+        "fast-check": "^3.14.0"
       },
       "engines": {
         "node": ">=18"
       }
     },
-    "node_modules/@waku/sdk": {
-      "version": "0.0.21",
-      "resolved": "https://registry.npmjs.org/@waku/sdk/-/sdk-0.0.21.tgz",
-      "integrity": "sha512-LKG4lGJryco9hHa5fS4GaZ1sDze6MoEeZWyRAmt4uN0UtarKWfzDzIUiifTH3x1vgpcV0mioQPCgeVy3z+acYg==",
+    "node_modules/@waku/relay/node_modules/@libp2p/multistream-select": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+      "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+      "peer": true,
       "dependencies": {
-        "@chainsafe/libp2p-noise": "^13.0.0",
-        "@libp2p/mplex": "^9.0.5",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "abortable-iterator": "^5.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-merge": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-pushable": "^3.2.0",
+        "it-reader": "^6.0.1",
+        "it-stream-types": "^2.0.1",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/@libp2p/peer-id-factory": {
+      "version": "3.0.11",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+      "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/@libp2p/peer-record": {
+      "version": "6.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+      "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/multiaddr": "^12.1.5",
+        "protons-runtime": "^5.0.0",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/@libp2p/peer-store": {
+      "version": "9.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+      "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+      "peer": true,
+      "dependencies": {
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@multiformats/multiaddr": "^12.1.5",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "mortice": "^3.0.1",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/@waku/core": {
+      "version": "0.0.26",
+      "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+      "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
+      "dependencies": {
+        "@noble/hashes": "^1.3.2",
+        "@waku/enr": "^0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
+        "debug": "^4.3.4",
+        "it-all": "^3.0.4",
+        "it-length-prefixed": "^9.0.1",
+        "it-pipe": "^3.0.1",
+        "p-event": "^6.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uuid": "^9.0.0"
+      },
+      "engines": {
+        "node": ">=18"
+      },
+      "peerDependencies": {
+        "@multiformats/multiaddr": "^12.0.0",
+        "libp2p": "^0.46.3"
+      },
+      "peerDependenciesMeta": {
+        "@multiformats/multiaddr": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@waku/relay/node_modules/libp2p": {
+      "version": "0.46.21",
+      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+      "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+      "peer": true,
+      "dependencies": {
+        "@achingbrain/nat-port-mapper": "^1.0.9",
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/interface-internal": "^0.1.9",
+        "@libp2p/keychain": "^3.0.8",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/multistream-select": "^4.0.6",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@libp2p/peer-store": "^9.0.9",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/mafmt": "^12.1.2",
+        "@multiformats/multiaddr": "^12.1.5",
+        "@multiformats/multiaddr-matcher": "^1.0.0",
+        "any-signal": "^4.1.1",
+        "datastore-core": "^9.0.1",
+        "delay": "^6.0.0",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "it-drain": "^3.0.2",
+        "it-filter": "^3.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-map": "^3.0.3",
+        "it-merge": "^3.0.0",
+        "it-pair": "^2.0.6",
+        "it-parallel": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-protobuf-stream": "^1.0.0",
+        "it-stream-types": "^2.0.1",
+        "merge-options": "^3.0.4",
+        "multiformats": "^12.0.1",
+        "p-defer": "^4.0.0",
+        "p-queue": "^7.3.4",
+        "p-retry": "^6.0.0",
+        "private-ip": "^3.0.0",
+        "protons-runtime": "^5.0.0",
+        "rate-limiter-flexible": "^3.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6",
+        "wherearewe": "^2.0.1",
+        "xsalsa20": "^1.1.0"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/p-queue": {
+      "version": "7.4.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "peer": true,
+      "dependencies": {
+        "eventemitter3": "^5.0.1",
+        "p-timeout": "^5.0.2"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/p-timeout": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+      "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+      "peer": true,
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/relay/node_modules/uuid": {
+      "version": "9.0.1",
+      "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+      "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+      "funding": [
+        "https://github.com/sponsors/broofa",
+        "https://github.com/sponsors/ctavan"
+      ],
+      "bin": {
+        "uuid": "dist/bin/uuid"
+      }
+    },
+    "node_modules/@waku/sdk": {
+      "version": "0.0.22",
+      "resolved": "https://registry.npmjs.org/@waku/sdk/-/sdk-0.0.22.tgz",
+      "integrity": "sha512-4ZnoYcnfuFYKtA738R6X/9RAoPM/cvG7PvkFp9y7wrnjKFBfb5/Ha36k20AkvdTAmdoUXmdl5g4i9q0iUapeBg==",
+      "dependencies": {
+        "@chainsafe/libp2p-noise": "^13.0.4",
+        "@libp2p/mplex": "^9.0.10",
         "@libp2p/websockets": "^7.0.5",
-        "@waku/core": "0.0.25",
-        "@waku/dns-discovery": "0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/peer-exchange": "^0.0.18",
-        "@waku/relay": "0.0.8",
-        "@waku/utils": "0.0.13",
+        "@waku/core": "0.0.26",
+        "@waku/dns-discovery": "0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/peer-exchange": "^0.0.19",
+        "@waku/relay": "0.0.9",
+        "@waku/utils": "0.0.14",
         "libp2p": "^0.46.14"
       },
       "engines": {
         "node": ">=18"
       }
     },
-    "node_modules/@waku/utils": {
-      "version": "0.0.13",
-      "resolved": "https://registry.npmjs.org/@waku/utils/-/utils-0.0.13.tgz",
-      "integrity": "sha512-sGZRJyYr7+QZpV2tlGJF48gKmwNdFha6rPKPgXiKDsz2YMhPlg70ffbGcND3bEfOwWmX4g/x5i3Oqwwl+HzwJw==",
+    "node_modules/@waku/sdk/node_modules/@libp2p/multistream-select": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+      "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
       "dependencies": {
-        "chai": "^4.3.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "abortable-iterator": "^5.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-merge": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-pushable": "^3.2.0",
+        "it-reader": "^6.0.1",
+        "it-stream-types": "^2.0.1",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/@libp2p/peer-id-factory": {
+      "version": "3.0.11",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+      "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/@libp2p/peer-record": {
+      "version": "6.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+      "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+      "dependencies": {
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/multiaddr": "^12.1.5",
+        "protons-runtime": "^5.0.0",
+        "uint8-varint": "^2.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/@libp2p/peer-store": {
+      "version": "9.0.12",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+      "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+      "dependencies": {
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@multiformats/multiaddr": "^12.1.5",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "mortice": "^3.0.1",
+        "multiformats": "^12.0.1",
+        "protons-runtime": "^5.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/@waku/core": {
+      "version": "0.0.26",
+      "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+      "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
+      "dependencies": {
+        "@noble/hashes": "^1.3.2",
+        "@waku/enr": "^0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
+        "debug": "^4.3.4",
+        "it-all": "^3.0.4",
+        "it-length-prefixed": "^9.0.1",
+        "it-pipe": "^3.0.1",
+        "p-event": "^6.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uuid": "^9.0.0"
+      },
+      "engines": {
+        "node": ">=18"
+      },
+      "peerDependencies": {
+        "@multiformats/multiaddr": "^12.0.0",
+        "libp2p": "^0.46.3"
+      },
+      "peerDependenciesMeta": {
+        "@multiformats/multiaddr": {
+          "optional": true
+        }
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/libp2p": {
+      "version": "0.46.21",
+      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+      "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+      "dependencies": {
+        "@achingbrain/nat-port-mapper": "^1.0.9",
+        "@libp2p/crypto": "^2.0.8",
+        "@libp2p/interface": "^0.1.6",
+        "@libp2p/interface-internal": "^0.1.9",
+        "@libp2p/keychain": "^3.0.8",
+        "@libp2p/logger": "^3.1.0",
+        "@libp2p/multistream-select": "^4.0.6",
+        "@libp2p/peer-collections": "^4.0.8",
+        "@libp2p/peer-id": "^3.0.6",
+        "@libp2p/peer-id-factory": "^3.0.8",
+        "@libp2p/peer-record": "^6.0.9",
+        "@libp2p/peer-store": "^9.0.9",
+        "@libp2p/utils": "^4.0.7",
+        "@multiformats/mafmt": "^12.1.2",
+        "@multiformats/multiaddr": "^12.1.5",
+        "@multiformats/multiaddr-matcher": "^1.0.0",
+        "any-signal": "^4.1.1",
+        "datastore-core": "^9.0.1",
+        "delay": "^6.0.0",
+        "interface-datastore": "^8.2.0",
+        "it-all": "^3.0.2",
+        "it-drain": "^3.0.2",
+        "it-filter": "^3.0.1",
+        "it-first": "^3.0.1",
+        "it-handshake": "^4.1.3",
+        "it-length-prefixed": "^9.0.1",
+        "it-map": "^3.0.3",
+        "it-merge": "^3.0.0",
+        "it-pair": "^2.0.6",
+        "it-parallel": "^3.0.0",
+        "it-pipe": "^3.0.1",
+        "it-protobuf-stream": "^1.0.0",
+        "it-stream-types": "^2.0.1",
+        "merge-options": "^3.0.4",
+        "multiformats": "^12.0.1",
+        "p-defer": "^4.0.0",
+        "p-queue": "^7.3.4",
+        "p-retry": "^6.0.0",
+        "private-ip": "^3.0.0",
+        "protons-runtime": "^5.0.0",
+        "rate-limiter-flexible": "^3.0.0",
+        "uint8arraylist": "^2.4.3",
+        "uint8arrays": "^4.0.6",
+        "wherearewe": "^2.0.1",
+        "xsalsa20": "^1.1.0"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/p-queue": {
+      "version": "7.4.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "dependencies": {
+        "eventemitter3": "^5.0.1",
+        "p-timeout": "^5.0.2"
+      },
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/p-timeout": {
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+      "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+      "engines": {
+        "node": ">=12"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus"
+      }
+    },
+    "node_modules/@waku/sdk/node_modules/uuid": {
+      "version": "9.0.1",
+      "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+      "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
+      "funding": [
+        "https://github.com/sponsors/broofa",
+        "https://github.com/sponsors/ctavan"
+      ],
+      "bin": {
+        "uuid": "dist/bin/uuid"
+      }
+    },
+    "node_modules/@waku/utils": {
+      "version": "0.0.14",
+      "resolved": "https://registry.npmjs.org/@waku/utils/-/utils-0.0.14.tgz",
+      "integrity": "sha512-BbrmT2ryL6ws+VXiihzL4IR9Yi8dH5JD6yTqkX14ilMu7DhiGqCGuyu2EQsng9x1/Bn1ulU60NQh3tFzENKAFQ==",
+      "dependencies": {
+        "@noble/hashes": "^1.3.2",
+        "@waku/interfaces": "0.0.21",
+        "chai": "^4.3.10",
         "debug": "^4.3.4",
         "uint8arrays": "^4.0.4"
       },
@@ -10072,6 +10886,17 @@
       "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
       "dev": true
     },
+    "node_modules/abort-controller": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
+      "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
+      "dependencies": {
+        "event-target-shim": "^5.0.0"
+      },
+      "engines": {
+        "node": ">=6.5"
+      }
+    },
     "node_modules/abortable-iterator": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-5.0.1.tgz",
@@ -10415,6 +11240,19 @@
       "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
       "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA=="
     },
+    "node_modules/asn1js": {
+      "version": "3.0.5",
+      "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz",
+      "integrity": "sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ==",
+      "dependencies": {
+        "pvtsutils": "^1.3.2",
+        "pvutils": "^1.1.3",
+        "tslib": "^2.4.0"
+      },
+      "engines": {
+        "node": ">=12.0.0"
+      }
+    },
     "node_modules/assert": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz",
@@ -10918,6 +11756,32 @@
         "utf-8-validate": "^5.0.5"
       }
     },
+    "node_modules/bl": {
+      "version": "6.0.12",
+      "resolved": "https://registry.npmjs.org/bl/-/bl-6.0.12.tgz",
+      "integrity": "sha512-EnEYHilP93oaOa2MnmNEjAcovPS3JlQZOyzGXi3EyEpPhm9qWvdDp7BmAVEVusGzp8LlwQK56Av+OkDoRjzE0w==",
+      "dependencies": {
+        "@types/readable-stream": "^4.0.0",
+        "buffer": "^6.0.3",
+        "inherits": "^2.0.4",
+        "readable-stream": "^4.2.0"
+      }
+    },
+    "node_modules/bl/node_modules/readable-stream": {
+      "version": "4.5.2",
+      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+      "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+      "dependencies": {
+        "abort-controller": "^3.0.0",
+        "buffer": "^6.0.3",
+        "events": "^3.3.0",
+        "process": "^0.11.10",
+        "string_decoder": "^1.3.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      }
+    },
     "node_modules/blob-to-buffer": {
       "version": "1.2.9",
       "resolved": "https://registry.npmjs.org/blob-to-buffer/-/blob-to-buffer-1.2.9.tgz",
@@ -11261,8 +12125,7 @@
     "node_modules/buffer-from": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
-      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
-      "devOptional": true
+      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
     },
     "node_modules/buffer-xor": {
       "version": "1.0.3",
@@ -11991,6 +12854,11 @@
         "node": ">= 10"
       }
     },
+    "node_modules/commist": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/commist/-/commist-3.2.0.tgz",
+      "integrity": "sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw=="
+    },
     "node_modules/common-tags": {
       "version": "1.8.2",
       "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz",
@@ -12065,6 +12933,20 @@
       "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
       "devOptional": true
     },
+    "node_modules/concat-stream": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
+      "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
+      "engines": [
+        "node >= 6.0"
+      ],
+      "dependencies": {
+        "buffer-from": "^1.0.0",
+        "inherits": "^2.0.3",
+        "readable-stream": "^3.0.2",
+        "typedarray": "^0.0.6"
+      }
+    },
     "node_modules/confusing-browser-globals": {
       "version": "1.0.11",
       "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz",
@@ -12707,62 +13589,53 @@
       }
     },
     "node_modules/datastore-core": {
-      "version": "9.2.7",
-      "resolved": "https://registry.npmjs.org/datastore-core/-/datastore-core-9.2.7.tgz",
-      "integrity": "sha512-S5ADNGRy1p6kHT6Khld+FThe1ITHuUiyYQ84VX2Kv8s6cXDiUuLlYPBIbZaWIgqR/JwxQCwa+5/08w6BZSIAow==",
+      "version": "9.2.9",
+      "resolved": "https://registry.npmjs.org/datastore-core/-/datastore-core-9.2.9.tgz",
+      "integrity": "sha512-wraWTPsbtdE7FFaVo3pwPuTB/zXsgwGGAm8BgBYwYAuzZCTS0MfXmd/HH1vR9s0/NFFjOVmBkGiWCvKxZ+QjVw==",
       "dependencies": {
-        "@libp2p/logger": "^4.0.1",
+        "@libp2p/logger": "^4.0.6",
         "err-code": "^3.0.1",
+        "interface-datastore": "^8.0.0",
         "interface-store": "^5.0.0",
-        "it-all": "^3.0.1",
-        "it-drain": "^3.0.1",
-        "it-filter": "^3.0.0",
-        "it-map": "^3.0.1",
-        "it-merge": "^3.0.1",
-        "it-pipe": "^3.0.0",
-        "it-pushable": "^3.0.0",
-        "it-sort": "^3.0.1",
-        "it-take": "^3.0.1",
-        "uint8arrays": "^5.0.0"
+        "it-drain": "^3.0.5",
+        "it-filter": "^3.0.4",
+        "it-map": "^3.0.5",
+        "it-merge": "^3.0.3",
+        "it-pipe": "^3.0.1",
+        "it-pushable": "^3.2.3",
+        "it-sort": "^3.0.4",
+        "it-take": "^3.0.4"
       }
     },
     "node_modules/datastore-core/node_modules/@libp2p/interface": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-      "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
       "dependencies": {
-        "@multiformats/multiaddr": "^12.1.10",
+        "@multiformats/multiaddr": "^12.1.14",
         "it-pushable": "^3.2.3",
         "it-stream-types": "^2.0.1",
-        "multiformats": "^13.0.0",
+        "multiformats": "^13.1.0",
         "progress-events": "^1.0.0",
-        "uint8arraylist": "^2.4.7"
+        "uint8arraylist": "^2.4.8"
       }
     },
     "node_modules/datastore-core/node_modules/@libp2p/logger": {
-      "version": "4.0.5",
-      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.5.tgz",
-      "integrity": "sha512-cXETMNZINnxeQBlfQ2S4di92FDDU89R7RHagrpebGrM7oLl5nf/Mw6myc23kGaM3/2YG3ko2rl9sYjemu0azTA==",
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+      "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
       "dependencies": {
-        "@libp2p/interface": "^1.1.2",
-        "@multiformats/multiaddr": "^12.1.10",
+        "@libp2p/interface": "^1.1.4",
+        "@multiformats/multiaddr": "^12.1.14",
         "debug": "^4.3.4",
-        "interface-datastore": "^8.2.0",
-        "multiformats": "^13.0.0"
+        "interface-datastore": "^8.2.11",
+        "multiformats": "^13.1.0"
       }
     },
     "node_modules/datastore-core/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
-    },
-    "node_modules/datastore-core/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
-      "dependencies": {
-        "multiformats": "^13.0.0"
-      }
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/debug": {
       "version": "4.3.4",
@@ -12977,9 +13850,9 @@
       }
     },
     "node_modules/default-gateway/node_modules/npm-run-path": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz",
-      "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==",
+      "version": "5.3.0",
+      "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
+      "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==",
       "dependencies": {
         "path-key": "^4.0.0"
       },
@@ -13184,13 +14057,15 @@
       "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
       "dev": true
     },
-    "node_modules/dns-over-http-resolver": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-3.0.2.tgz",
-      "integrity": "sha512-5batkHOjCkuAfrFa+IPmt3jyeZqLtSMfAo1HQp3hfwtzgUwHooecTFplnYC093u5oRNL4CQHCXh3OfER7+vWrA==",
+    "node_modules/dns-packet": {
+      "version": "5.6.1",
+      "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz",
+      "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==",
       "dependencies": {
-        "debug": "^4.3.4",
-        "receptacle": "^1.3.2"
+        "@leichtgewicht/ip-codec": "^2.0.1"
+      },
+      "engines": {
+        "node": ">=6"
       }
     },
     "node_modules/dns-query": {
@@ -14207,6 +15082,14 @@
       "resolved": "https://registry.npmjs.org/event-iterator/-/event-iterator-2.0.0.tgz",
       "integrity": "sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ=="
     },
+    "node_modules/event-target-shim": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
+      "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==",
+      "engines": {
+        "node": ">=6"
+      }
+    },
     "node_modules/eventemitter3": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
@@ -14294,9 +15177,9 @@
       }
     },
     "node_modules/fast-check": {
-      "version": "3.15.0",
-      "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.15.0.tgz",
-      "integrity": "sha512-iBz6c+EXL6+nI931x/sbZs1JYTZtLG6Cko0ouS8LRTikhDR7+wZk4TYzdRavlnByBs2G6+nuuJ7NYL9QplNt8Q==",
+      "version": "3.16.0",
+      "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.16.0.tgz",
+      "integrity": "sha512-k8GtQHi4pJoRQ1gVDFQno+/FVkowo/ehiz/aCj9O/D7HRWb1sSFzNrw+iPVU8QlWtH+jNwbuN+dDVg3QkS56DQ==",
       "funding": [
         {
           "type": "individual",
@@ -14374,6 +15257,18 @@
       "resolved": "https://registry.npmjs.org/fast-readable-async-iterator/-/fast-readable-async-iterator-1.1.2.tgz",
       "integrity": "sha512-RvoeUNYOmXLr3j6ZcThapEWw8xoXZe0DHHIOvqJH2VOzbJ9lYLDSIpJg0hqoSkh9yzFPvR1aocuWl67ECPZrdQ=="
     },
+    "node_modules/fast-unique-numbers": {
+      "version": "8.0.13",
+      "resolved": "https://registry.npmjs.org/fast-unique-numbers/-/fast-unique-numbers-8.0.13.tgz",
+      "integrity": "sha512-7OnTFAVPefgw2eBJ1xj2PGGR9FwYzSUso9decayHgCDX4sJkHLdcsYTytTg+tYv+wKF3U8gJuSBz2jJpQV4u/g==",
+      "dependencies": {
+        "@babel/runtime": "^7.23.8",
+        "tslib": "^2.6.2"
+      },
+      "engines": {
+        "node": ">=16.1.0"
+      }
+    },
     "node_modules/fast-url-parser": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz",
@@ -15043,6 +15938,11 @@
         "minimalistic-assert": "^1.0.1"
       }
     },
+    "node_modules/hashlru": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/hashlru/-/hashlru-2.3.0.tgz",
+      "integrity": "sha512-0cMsjjIC8I+D3M44pOQdsy0OHXGLVz6Z0beRuufhKa0KfaD2wGwAev6jILzXsd3/vpnNQJmWyZtIILqM1N+n5A=="
+    },
     "node_modules/hasown": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
@@ -15118,6 +16018,11 @@
         "url": "https://github.com/sponsors/wooorm"
       }
     },
+    "node_modules/help-me": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz",
+      "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg=="
+    },
     "node_modules/hi-base32": {
       "version": "0.5.1",
       "resolved": "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.1.tgz",
@@ -15514,31 +16419,31 @@
       "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
     },
     "node_modules/interface-datastore": {
-      "version": "8.2.10",
-      "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.10.tgz",
-      "integrity": "sha512-D8RuxMdjOPB+j6WMDJ+I2aXTDzUT6DIVjgzo1E+ODL7w8WrSFl9FXD2SYmgj6vVzdb7Kb5qmAI9pEnDZJz7ifg==",
+      "version": "8.2.11",
+      "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.11.tgz",
+      "integrity": "sha512-9E0iXehfp/j0UbZ2mvlYB4K9pP7uQBCppfuy8WHs1EHF6wLQrM9+zwyX+8Qt6HnH4GKZRyXX/CNXm6oD4+QYgA==",
       "dependencies": {
         "interface-store": "^5.0.0",
-        "uint8arrays": "^5.0.0"
+        "uint8arrays": "^5.0.2"
       }
     },
     "node_modules/interface-datastore/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/interface-datastore/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
     },
     "node_modules/interface-store": {
-      "version": "5.1.7",
-      "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.7.tgz",
-      "integrity": "sha512-DVMTgZ43NAdDtXL3QsEq8N0vuUYVBxiGbxN0uI0lrNasuX/CGSrU7bjOO2DaGTMNut4Pt3ae+VQYFvNtH4Oyeg=="
+      "version": "5.1.8",
+      "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.8.tgz",
+      "integrity": "sha512-7na81Uxkl0vqk0CBPO5PvyTkdaJBaezwUJGsMOz7riPOq0rJt+7W31iaopaMICWea/iykUsvNlPx/Tc+MxC3/w=="
     },
     "node_modules/internal-slot": {
       "version": "1.0.6",
@@ -16327,9 +17232,9 @@
       }
     },
     "node_modules/it-byte-stream": {
-      "version": "1.0.7",
-      "resolved": "https://registry.npmjs.org/it-byte-stream/-/it-byte-stream-1.0.7.tgz",
-      "integrity": "sha512-oWO+TitZNn1a7+Yl0SM4UAyuylhJ3MmnnewVWO5shl0Bs1KQPMWuMB/6d0X0H1ygBlYCLAxF9EJqa19pWCnVRQ==",
+      "version": "1.0.8",
+      "resolved": "https://registry.npmjs.org/it-byte-stream/-/it-byte-stream-1.0.8.tgz",
+      "integrity": "sha512-H32LbN6kdX8HXqH68z5uivfkVYJEi5tIPRwIQNR5Qsx3uoDRhYdBRHzf3NOVAf6vqulFUSQLuU+Y0rs/QeWn3A==",
       "dependencies": {
         "it-stream-types": "^2.0.1",
         "p-defer": "^4.0.0",
@@ -16400,14 +17305,14 @@
       }
     },
     "node_modules/it-length-prefixed/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/it-length-prefixed/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -16539,14 +17444,14 @@
       }
     },
     "node_modules/it-ws/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/it-ws/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -20903,6 +21808,15 @@
       "resolved": "https://registry.npmjs.org/join-async-iterator/-/join-async-iterator-1.1.1.tgz",
       "integrity": "sha512-ATse+nuNeKZ9K1y27LKdvPe/GCe9R/u9dw9vI248e+vILeRK3IcJP4JUPAlSmKRCDK0cKhEwfmiw4Skqx7UnGQ=="
     },
+    "node_modules/js-sdsl": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz",
+      "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==",
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/js-sdsl"
+      }
+    },
     "node_modules/js-sha3": {
       "version": "0.9.3",
       "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.9.3.tgz",
@@ -21181,55 +22095,135 @@
       }
     },
     "node_modules/libp2p": {
-      "version": "0.46.21",
-      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
-      "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-1.3.0.tgz",
+      "integrity": "sha512-nmwlV+yWMjOW8uBH/pfFhdTh5tGKRSb3QU8dyk/qqkaikdw+tpj58seAcMtEr1f2/oSi3Mu7GeB1z9Pb1O1wmA==",
       "dependencies": {
-        "@achingbrain/nat-port-mapper": "^1.0.9",
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/interface-internal": "^0.1.9",
-        "@libp2p/keychain": "^3.0.8",
-        "@libp2p/logger": "^3.1.0",
-        "@libp2p/multistream-select": "^4.0.6",
-        "@libp2p/peer-collections": "^4.0.8",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/peer-id-factory": "^3.0.8",
-        "@libp2p/peer-record": "^6.0.9",
-        "@libp2p/peer-store": "^9.0.9",
-        "@libp2p/utils": "^4.0.7",
-        "@multiformats/mafmt": "^12.1.2",
-        "@multiformats/multiaddr": "^12.1.5",
-        "@multiformats/multiaddr-matcher": "^1.0.0",
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/interface-internal": "^1.0.9",
+        "@libp2p/logger": "^4.0.7",
+        "@libp2p/multistream-select": "^5.1.4",
+        "@libp2p/peer-collections": "^5.1.7",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/peer-id-factory": "^4.0.7",
+        "@libp2p/peer-store": "^10.0.11",
+        "@libp2p/utils": "^5.2.6",
+        "@multiformats/dns": "^1.0.1",
+        "@multiformats/multiaddr": "^12.2.0",
         "any-signal": "^4.1.1",
-        "datastore-core": "^9.0.1",
-        "delay": "^6.0.0",
-        "interface-datastore": "^8.2.0",
-        "it-all": "^3.0.2",
-        "it-drain": "^3.0.2",
-        "it-filter": "^3.0.1",
-        "it-first": "^3.0.1",
-        "it-handshake": "^4.1.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-map": "^3.0.3",
-        "it-merge": "^3.0.0",
-        "it-pair": "^2.0.6",
-        "it-parallel": "^3.0.0",
-        "it-pipe": "^3.0.1",
-        "it-protobuf-stream": "^1.0.0",
-        "it-stream-types": "^2.0.1",
+        "datastore-core": "^9.2.8",
+        "interface-datastore": "^8.2.11",
+        "it-merge": "^3.0.3",
+        "it-parallel": "^3.0.6",
         "merge-options": "^3.0.4",
-        "multiformats": "^12.0.1",
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/crypto": {
+      "version": "4.0.3",
+      "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+      "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@noble/curves": "^1.3.0",
+        "@noble/hashes": "^1.3.3",
+        "asn1js": "^3.0.5",
+        "multiformats": "^13.1.0",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/interface": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+      "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+      "dependencies": {
+        "@multiformats/multiaddr": "^12.1.14",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "multiformats": "^13.1.0",
+        "progress-events": "^1.0.0",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/interface-internal": {
+      "version": "1.0.9",
+      "resolved": "https://registry.npmjs.org/@libp2p/interface-internal/-/interface-internal-1.0.9.tgz",
+      "integrity": "sha512-c5BzjXdRnuI+xjLiPjGMxh6QbU51wEIdz/OrgQqo2dKDjWz3Qu0due9H2wzzB8nvSNWTLHRr1ucVga3SrmbngQ==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-collections": "^5.1.7",
+        "@multiformats/multiaddr": "^12.1.14",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/logger": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+      "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@multiformats/multiaddr": "^12.1.14",
+        "debug": "^4.3.4",
+        "interface-datastore": "^8.2.11",
+        "multiformats": "^13.1.0"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/peer-collections": {
+      "version": "5.1.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-collections/-/peer-collections-5.1.7.tgz",
+      "integrity": "sha512-9XXWSJtC7XvbH32h2bK3fygyzd4B2/JeWzsjX8cUDtO69jKNiVJglB8UqajZBuwLZSOQG5aRNWK4RWXJDrsh/w==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/peer-id": {
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+      "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+      "dependencies": {
+        "@libp2p/interface": "^1.1.4",
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      }
+    },
+    "node_modules/libp2p/node_modules/@libp2p/utils": {
+      "version": "5.2.6",
+      "resolved": "https://registry.npmjs.org/@libp2p/utils/-/utils-5.2.6.tgz",
+      "integrity": "sha512-2Y2zi2TsyhOl+8TH27YZiEJWfdrKRogTzYRxQUKNTX03izXpUcwGsFLPjK7nR39LzYQrQ8si1Kx2ayA3zk7BKg==",
+      "dependencies": {
+        "@chainsafe/is-ip": "^2.0.2",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/logger": "^4.0.7",
+        "@multiformats/multiaddr": "^12.1.14",
+        "@multiformats/multiaddr-matcher": "^1.1.2",
+        "delay": "^6.0.0",
+        "get-iterator": "^2.0.1",
+        "is-loopback-addr": "^2.0.2",
+        "it-pushable": "^3.2.3",
+        "it-stream-types": "^2.0.1",
+        "netmask": "^2.0.2",
         "p-defer": "^4.0.0",
-        "p-queue": "^7.3.4",
-        "p-retry": "^6.0.0",
-        "private-ip": "^3.0.0",
-        "protons-runtime": "^5.0.0",
-        "rate-limiter-flexible": "^3.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6",
-        "wherearewe": "^2.0.1",
-        "xsalsa20": "^1.1.0"
+        "race-event": "^1.2.0",
+        "race-signal": "^1.0.2",
+        "uint8arraylist": "^2.4.8"
+      }
+    },
+    "node_modules/libp2p/node_modules/multiformats": {
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+    },
+    "node_modules/libp2p/node_modules/uint8arrays": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+      "dependencies": {
+        "multiformats": "^13.0.0"
       }
     },
     "node_modules/lie": {
@@ -22611,21 +23605,6 @@
         "p-timeout": "^6.0.0"
       }
     },
-    "node_modules/mortice/node_modules/p-queue": {
-      "version": "8.0.1",
-      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-8.0.1.tgz",
-      "integrity": "sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==",
-      "dependencies": {
-        "eventemitter3": "^5.0.1",
-        "p-timeout": "^6.1.2"
-      },
-      "engines": {
-        "node": ">=18"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
     "node_modules/mp4-box-encoding": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/mp4-box-encoding/-/mp4-box-encoding-1.4.1.tgz",
@@ -22657,6 +23636,91 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/mqtt": {
+      "version": "5.4.0",
+      "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-5.4.0.tgz",
+      "integrity": "sha512-vU03lqX+IpMuHlPSRNl3+HSMNrz5vN5yyZ6wWyv23mDQj/1Lm1JlAT4pvQCfZq9jvsnmSwMqSkB5mm2WUOJw6Q==",
+      "dependencies": {
+        "@types/readable-stream": "^4.0.5",
+        "@types/ws": "^8.5.9",
+        "commist": "^3.2.0",
+        "concat-stream": "^2.0.0",
+        "debug": "^4.3.4",
+        "help-me": "^5.0.0",
+        "lru-cache": "^10.0.1",
+        "minimist": "^1.2.8",
+        "mqtt": "^5.2.0",
+        "mqtt-packet": "^9.0.0",
+        "number-allocator": "^1.0.14",
+        "readable-stream": "^4.4.2",
+        "reinterval": "^1.1.0",
+        "rfdc": "^1.3.0",
+        "split2": "^4.2.0",
+        "worker-timers": "^7.1.4",
+        "ws": "^8.14.2"
+      },
+      "bin": {
+        "mqtt": "build/bin/mqtt.js",
+        "mqtt_pub": "build/bin/pub.js",
+        "mqtt_sub": "build/bin/sub.js"
+      },
+      "engines": {
+        "node": ">=16.0.0"
+      }
+    },
+    "node_modules/mqtt-packet": {
+      "version": "9.0.0",
+      "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-9.0.0.tgz",
+      "integrity": "sha512-8v+HkX+fwbodsWAZIZTI074XIoxVBOmPeggQuDFCGg1SqNcC+uoRMWu7J6QlJPqIUIJXmjNYYHxBBLr1Y/Df4w==",
+      "dependencies": {
+        "bl": "^6.0.8",
+        "debug": "^4.3.4",
+        "process-nextick-args": "^2.0.1"
+      }
+    },
+    "node_modules/mqtt/node_modules/lru-cache": {
+      "version": "10.2.0",
+      "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz",
+      "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==",
+      "engines": {
+        "node": "14 || >=16.14"
+      }
+    },
+    "node_modules/mqtt/node_modules/readable-stream": {
+      "version": "4.5.2",
+      "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+      "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+      "dependencies": {
+        "abort-controller": "^3.0.0",
+        "buffer": "^6.0.3",
+        "events": "^3.3.0",
+        "process": "^0.11.10",
+        "string_decoder": "^1.3.0"
+      },
+      "engines": {
+        "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+      }
+    },
+    "node_modules/mqtt/node_modules/ws": {
+      "version": "8.16.0",
+      "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
+      "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
+      "engines": {
+        "node": ">=10.0.0"
+      },
+      "peerDependencies": {
+        "bufferutil": "^4.0.1",
+        "utf-8-validate": ">=5.0.2"
+      },
+      "peerDependenciesMeta": {
+        "bufferutil": {
+          "optional": true
+        },
+        "utf-8-validate": {
+          "optional": true
+        }
+      }
+    },
     "node_modules/mri": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
@@ -23075,6 +24139,15 @@
       "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==",
       "dev": true
     },
+    "node_modules/number-allocator": {
+      "version": "1.0.14",
+      "resolved": "https://registry.npmjs.org/number-allocator/-/number-allocator-1.0.14.tgz",
+      "integrity": "sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==",
+      "dependencies": {
+        "debug": "^4.3.1",
+        "js-sdsl": "4.3.0"
+      }
+    },
     "node_modules/nwsapi": {
       "version": "2.2.7",
       "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz",
@@ -23301,9 +24374,9 @@
       }
     },
     "node_modules/p-event": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/p-event/-/p-event-6.0.0.tgz",
-      "integrity": "sha512-Xbfxd0CfZmHLGKXH32k1JKjQYX6Rkv0UtQdaFJ8OyNcf+c0oWCeXHc1C4CX/IESZLmcvfPa5aFIO/vCr5gqtag==",
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/p-event/-/p-event-6.0.1.tgz",
+      "integrity": "sha512-Q6Bekk5wpzW5qIyUP4gdMEujObYstZl6DMMOSenwBvV0BlE5LkDwkjs5yHbZmdCEq2o4RJx4tE1vwxFVf2FG1w==",
       "dependencies": {
         "p-timeout": "^6.1.2"
       },
@@ -23345,26 +24418,15 @@
       }
     },
     "node_modules/p-queue": {
-      "version": "7.4.1",
-      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
-      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "version": "8.0.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-8.0.1.tgz",
+      "integrity": "sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==",
       "dependencies": {
         "eventemitter3": "^5.0.1",
-        "p-timeout": "^5.0.2"
+        "p-timeout": "^6.1.2"
       },
       "engines": {
-        "node": ">=12"
-      },
-      "funding": {
-        "url": "https://github.com/sponsors/sindresorhus"
-      }
-    },
-    "node_modules/p-queue/node_modules/p-timeout": {
-      "version": "5.1.0",
-      "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
-      "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
-      "engines": {
-        "node": ">=12"
+        "node": ">=18"
       },
       "funding": {
         "url": "https://github.com/sponsors/sindresorhus"
@@ -24728,11 +25790,15 @@
       "version": "0.11.10",
       "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
       "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
-      "dev": true,
       "engines": {
         "node": ">= 0.6.0"
       }
     },
+    "node_modules/process-nextick-args": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
+    },
     "node_modules/progress-events": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/progress-events/-/progress-events-1.0.0.tgz",
@@ -24804,23 +25870,24 @@
       }
     },
     "node_modules/protons-runtime": {
-      "version": "5.2.2",
-      "resolved": "https://registry.npmjs.org/protons-runtime/-/protons-runtime-5.2.2.tgz",
-      "integrity": "sha512-o97rNPN9pE3cxOxjs/waZNRKlbY/DR11oc20rUvarWZgFzQLLLzJU0RFh5JPi6GJCN67VGVn9/FDIEtFblfB3A==",
+      "version": "5.4.0",
+      "resolved": "https://registry.npmjs.org/protons-runtime/-/protons-runtime-5.4.0.tgz",
+      "integrity": "sha512-XfA++W/WlQOSyjUyuF5lgYBfXZUEMP01Oh1C2dSwZAlF2e/ZrMRPfWonXj6BGM+o8Xciv7w0tsRMKYwYEuQvaw==",
       "dependencies": {
+        "uint8-varint": "^2.0.2",
         "uint8arraylist": "^2.4.3",
         "uint8arrays": "^5.0.1"
       }
     },
     "node_modules/protons-runtime/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/protons-runtime/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -24885,6 +25952,22 @@
         }
       ]
     },
+    "node_modules/pvtsutils": {
+      "version": "1.3.5",
+      "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.5.tgz",
+      "integrity": "sha512-ARvb14YB9Nm2Xi6nBq1ZX6dAM0FsJnuk+31aUp4TrcZEdKUlSqOqsxJHUPJDNE3qiIp+iUPEIeR6Je/tgV7zsA==",
+      "dependencies": {
+        "tslib": "^2.6.1"
+      }
+    },
+    "node_modules/pvutils": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz",
+      "integrity": "sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ==",
+      "engines": {
+        "node": ">=6.0.0"
+      }
+    },
     "node_modules/qrcode-generator": {
       "version": "1.4.4",
       "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz",
@@ -24953,6 +26036,11 @@
       "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
       "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag=="
     },
+    "node_modules/race-event": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/race-event/-/race-event-1.2.0.tgz",
+      "integrity": "sha512-7EvAjTu9uuKa03Jky8yfSy6/SnnMTh6nouNmdeWv9b0dT8eDZC5ylx30cOR9YO9otQorVjjkIuSHQ5Ml/bKwMw=="
+    },
     "node_modules/race-signal": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/race-signal/-/race-signal-1.0.2.tgz",
@@ -25311,14 +26399,6 @@
         "node": ">=8.10.0"
       }
     },
-    "node_modules/receptacle": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/receptacle/-/receptacle-1.3.2.tgz",
-      "integrity": "sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==",
-      "dependencies": {
-        "ms": "^2.1.1"
-      }
-    },
     "node_modules/record-cache": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/record-cache/-/record-cache-1.2.0.tgz",
@@ -25489,6 +26569,11 @@
         "jsesc": "bin/jsesc"
       }
     },
+    "node_modules/reinterval": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz",
+      "integrity": "sha512-QIRet3SYrGp0HUHO88jVskiG6seqUGC5iAG7AwI/BV4ypGcuqk9Du6YQBUOUqm9c8pw1eyLoIaONifRua1lsEQ=="
+    },
     "node_modules/relateurl": {
       "version": "0.2.7",
       "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
@@ -25668,6 +26753,11 @@
         "node": ">=0.10.0"
       }
     },
+    "node_modules/rfdc": {
+      "version": "1.3.1",
+      "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz",
+      "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg=="
+    },
     "node_modules/rimraf": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -26438,6 +27528,14 @@
         "node": "*"
       }
     },
+    "node_modules/split2": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
+      "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
+      "engines": {
+        "node": ">= 10.x"
+      }
+    },
     "node_modules/sprintf-js": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -27521,12 +28619,15 @@
       }
     },
     "node_modules/trystero": {
-      "version": "0.15.2",
-      "resolved": "https://registry.npmjs.org/trystero/-/trystero-0.15.2.tgz",
-      "integrity": "sha512-kcSXs+AFlV0R5VJzW5B1+vR2qWIivuyQIO4L0VBns4Asd8Ll+JVRMJ9XEh/HKZfyo/OFTRMgIBRDvKSTdmWHqA==",
+      "version": "0.18.0",
+      "resolved": "https://registry.npmjs.org/trystero/-/trystero-0.18.0.tgz",
+      "integrity": "sha512-EjngCNB7Xw8ajmq7nlOf69+SRl0HJLcSNFe0E1CwN794X0cVtLDQewN+AtSzBj3RuMueaoIfOJfRvzVT1Mm1TA==",
       "dependencies": {
-        "@waku/sdk": "^0.0.21",
+        "@noble/curves": "^1.3.0",
+        "@waku/sdk": "^0.0.22",
         "firebase": "^10.6.0",
+        "libp2p": "^1.2.1",
+        "mqtt": "^5.3.5",
         "simple-peer-light": "^9.10.0"
       }
     },
@@ -27699,6 +28800,11 @@
         "url": "https://github.com/sponsors/ljharb"
       }
     },
+    "node_modules/typedarray": {
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+      "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="
+    },
     "node_modules/typeface-public-sans": {
       "version": "1.1.13",
       "resolved": "https://registry.npmjs.org/typeface-public-sans/-/typeface-public-sans-1.1.13.tgz",
@@ -27737,23 +28843,23 @@
       }
     },
     "node_modules/uint8-varint": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/uint8-varint/-/uint8-varint-2.0.3.tgz",
-      "integrity": "sha512-seXTM8ba4uuAMDgi3UHXPdDxCBKjWWZigW+F+1ESPhOZv9ekT1qmbdzYHLSNA+u+wHj10P55dQ41y2Qh7NOqiA==",
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/uint8-varint/-/uint8-varint-2.0.4.tgz",
+      "integrity": "sha512-FwpTa7ZGA/f/EssWAb5/YV6pHgVF1fViKdW8cWaEarjB8t7NyofSWBdOTyFPaGuUG4gx3v1O3PQ8etsiOs3lcw==",
       "dependencies": {
         "uint8arraylist": "^2.0.0",
         "uint8arrays": "^5.0.0"
       }
     },
     "node_modules/uint8-varint/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/uint8-varint/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -27767,14 +28873,14 @@
       }
     },
     "node_modules/uint8arraylist/node_modules/multiformats": {
-      "version": "13.0.1",
-      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-      "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+      "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
     },
     "node_modules/uint8arraylist/node_modules/uint8arrays": {
-      "version": "5.0.1",
-      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-      "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+      "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
       "dependencies": {
         "multiformats": "^13.0.0"
       }
@@ -29781,6 +30887,37 @@
         "workbox-core": "7.0.0"
       }
     },
+    "node_modules/worker-timers": {
+      "version": "7.1.4",
+      "resolved": "https://registry.npmjs.org/worker-timers/-/worker-timers-7.1.4.tgz",
+      "integrity": "sha512-8PRtiPAyeYukrY+iOUL+0tq4Zn5qyCHrTqFTtHxcESfIxGyulxNwyzQkybrYBKhnMWmx0bku3wxRfE1hts5R6Q==",
+      "dependencies": {
+        "@babel/runtime": "^7.24.0",
+        "tslib": "^2.6.2",
+        "worker-timers-broker": "^6.1.4",
+        "worker-timers-worker": "^7.0.67"
+      }
+    },
+    "node_modules/worker-timers-broker": {
+      "version": "6.1.4",
+      "resolved": "https://registry.npmjs.org/worker-timers-broker/-/worker-timers-broker-6.1.4.tgz",
+      "integrity": "sha512-y3D+Yfj37lrItEMIlcfCm/IRueYtYKgpLlTG2wgTIZ9PSw0n/K4kweilgk3gTC4ahbQNVGT90lU+Rf7W4M5bsw==",
+      "dependencies": {
+        "@babel/runtime": "^7.24.0",
+        "fast-unique-numbers": "^8.0.13",
+        "tslib": "^2.6.2",
+        "worker-timers-worker": "^7.0.67"
+      }
+    },
+    "node_modules/worker-timers-worker": {
+      "version": "7.0.67",
+      "resolved": "https://registry.npmjs.org/worker-timers-worker/-/worker-timers-worker-7.0.67.tgz",
+      "integrity": "sha512-0ZP2+v2fyiiiGaCEdWxMRUk5YxGFwWdRGB12ZfQy13vw8/27Xd+MW3ua56qlcM30nzjpddXXzLuEpHhGW+Pz7w==",
+      "dependencies": {
+        "@babel/runtime": "^7.24.0",
+        "tslib": "^2.6.2"
+      }
+    },
     "node_modules/wormhole-crypto": {
       "version": "0.3.1",
       "resolved": "https://registry.npmjs.org/wormhole-crypto/-/wormhole-crypto-0.3.1.tgz",
@@ -30100,34 +31237,34 @@
       },
       "dependencies": {
         "@libp2p/interface": {
-          "version": "1.1.2",
-          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-          "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
           "requires": {
-            "@multiformats/multiaddr": "^12.1.10",
+            "@multiformats/multiaddr": "^12.1.14",
             "it-pushable": "^3.2.3",
             "it-stream-types": "^2.0.1",
-            "multiformats": "^13.0.0",
+            "multiformats": "^13.1.0",
             "progress-events": "^1.0.0",
-            "uint8arraylist": "^2.4.7"
+            "uint8arraylist": "^2.4.8"
           }
         },
         "@libp2p/logger": {
-          "version": "4.0.5",
-          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.5.tgz",
-          "integrity": "sha512-cXETMNZINnxeQBlfQ2S4di92FDDU89R7RHagrpebGrM7oLl5nf/Mw6myc23kGaM3/2YG3ko2rl9sYjemu0azTA==",
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+          "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
           "requires": {
-            "@libp2p/interface": "^1.1.2",
-            "@multiformats/multiaddr": "^12.1.10",
+            "@libp2p/interface": "^1.1.4",
+            "@multiformats/multiaddr": "^12.1.14",
             "debug": "^4.3.4",
-            "interface-datastore": "^8.2.0",
-            "multiformats": "^13.0.0"
+            "interface-datastore": "^8.2.11",
+            "multiformats": "^13.1.0"
           }
         },
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         }
       }
     },
@@ -31494,9 +32631,9 @@
       "dev": true
     },
     "@babel/runtime": {
-      "version": "7.23.9",
-      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.9.tgz",
-      "integrity": "sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==",
+      "version": "7.24.0",
+      "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.0.tgz",
+      "integrity": "sha512-Chk32uHMg6TnQdvw2e9IlqPpFX/6NLuK0Ys2PqLb7/gL5uFn9mXvK715FGLlOLQrcO4qIkNHkvPGktzzXexsFw==",
       "requires": {
         "regenerator-runtime": "^0.14.0"
       }
@@ -34331,11 +35468,6 @@
         "uint8arraylist": "^2.4.3"
       }
     },
-    "@libp2p/interface-keys": {
-      "version": "1.0.8",
-      "resolved": "https://registry.npmjs.org/@libp2p/interface-keys/-/interface-keys-1.0.8.tgz",
-      "integrity": "sha512-CJ1SlrwuoHMquhEEWS77E+4vv7hwB7XORkqzGQrPQmA9MRdIEZRS64bA4JqCLUDa4ltH0l+U1vp0oZHLT67NEA=="
-    },
     "@libp2p/interfaces": {
       "version": "3.3.2",
       "resolved": "https://registry.npmjs.org/@libp2p/interfaces/-/interfaces-3.3.2.tgz",
@@ -34387,24 +35519,47 @@
       }
     },
     "@libp2p/multistream-select": {
-      "version": "4.0.10",
-      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
-      "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+      "version": "5.1.4",
+      "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-5.1.4.tgz",
+      "integrity": "sha512-hFK831x8SRQwWO6sZ0PLdLMJdxSw/HFWTZLqwFGsQbgfgBd+Via3Fztb7xe6VRqHpnAwZkVujP+iubAI7AghGg==",
       "requires": {
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/logger": "^3.1.0",
-        "abortable-iterator": "^5.0.1",
-        "it-first": "^3.0.1",
-        "it-handshake": "^4.1.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-merge": "^3.0.0",
-        "it-pipe": "^3.0.1",
-        "it-pushable": "^3.2.0",
-        "it-reader": "^6.0.1",
+        "@libp2p/interface": "^1.1.4",
+        "it-length-prefixed": "^9.0.4",
+        "it-length-prefixed-stream": "^1.1.6",
         "it-stream-types": "^2.0.1",
-        "uint8-varint": "^2.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "p-defer": "^4.0.0",
+        "race-signal": "^1.0.2",
+        "uint8-varint": "^2.0.4",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
       }
     },
     "@libp2p/peer-collections": {
@@ -34427,54 +35582,238 @@
       }
     },
     "@libp2p/peer-id-factory": {
-      "version": "3.0.11",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
-      "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+      "version": "4.0.7",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-4.0.7.tgz",
+      "integrity": "sha512-ueSjkodKPhYw7C0ysRGscY+e9vJ+ixpmJvi5w8vbnOn0ex9cAT+9S7DGL03d8vGMAT3xjEbUsI2GpF17uZ9Rpg==",
       "requires": {
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/peer-id": "^3.0.6",
-        "multiformats": "^12.0.1",
-        "protons-runtime": "^5.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "@libp2p/crypto": {
+          "version": "4.0.3",
+          "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+          "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@noble/curves": "^1.3.0",
+            "@noble/hashes": "^1.3.3",
+            "asn1js": "^3.0.5",
+            "multiformats": "^13.1.0",
+            "protons-runtime": "^5.4.0",
+            "uint8arraylist": "^2.4.8",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "@libp2p/peer-id": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+          "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "multiformats": "^13.1.0",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
       }
     },
     "@libp2p/peer-record": {
-      "version": "6.0.12",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
-      "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+      "version": "7.0.10",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-7.0.10.tgz",
+      "integrity": "sha512-njVSa2mMcGqQoCnhmZQOadHIQMsO52wqKO6fP1On8sVRmb9yXNGBkZ+b5pRXjjPzUpJeUmC+/SZHpeLqpdpPMQ==",
       "requires": {
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/utils": "^4.0.7",
-        "@multiformats/multiaddr": "^12.1.5",
-        "protons-runtime": "^5.0.0",
-        "uint8-varint": "^2.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/utils": "^5.2.6",
+        "@multiformats/multiaddr": "^12.1.14",
+        "protons-runtime": "^5.4.0",
+        "uint8-varint": "^2.0.4",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "@libp2p/crypto": {
+          "version": "4.0.3",
+          "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+          "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@noble/curves": "^1.3.0",
+            "@noble/hashes": "^1.3.3",
+            "asn1js": "^3.0.5",
+            "multiformats": "^13.1.0",
+            "protons-runtime": "^5.4.0",
+            "uint8arraylist": "^2.4.8",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "@libp2p/logger": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+          "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@multiformats/multiaddr": "^12.1.14",
+            "debug": "^4.3.4",
+            "interface-datastore": "^8.2.11",
+            "multiformats": "^13.1.0"
+          }
+        },
+        "@libp2p/peer-id": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+          "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "multiformats": "^13.1.0",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "@libp2p/utils": {
+          "version": "5.2.6",
+          "resolved": "https://registry.npmjs.org/@libp2p/utils/-/utils-5.2.6.tgz",
+          "integrity": "sha512-2Y2zi2TsyhOl+8TH27YZiEJWfdrKRogTzYRxQUKNTX03izXpUcwGsFLPjK7nR39LzYQrQ8si1Kx2ayA3zk7BKg==",
+          "requires": {
+            "@chainsafe/is-ip": "^2.0.2",
+            "@libp2p/interface": "^1.1.4",
+            "@libp2p/logger": "^4.0.7",
+            "@multiformats/multiaddr": "^12.1.14",
+            "@multiformats/multiaddr-matcher": "^1.1.2",
+            "delay": "^6.0.0",
+            "get-iterator": "^2.0.1",
+            "is-loopback-addr": "^2.0.2",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "netmask": "^2.0.2",
+            "p-defer": "^4.0.0",
+            "race-event": "^1.2.0",
+            "race-signal": "^1.0.2",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
       }
     },
     "@libp2p/peer-store": {
-      "version": "9.0.12",
-      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
-      "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+      "version": "10.0.11",
+      "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-10.0.11.tgz",
+      "integrity": "sha512-egcEzHRQUTW7mQuLPyN/y0Rtunk8zFoxLdTRNjJTrvQRmkCeLIDZ8VsYB0KF7feA85nbpRFR62dVjN46I65yFA==",
       "requires": {
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/logger": "^3.1.0",
-        "@libp2p/peer-collections": "^4.0.8",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/peer-id-factory": "^3.0.8",
-        "@libp2p/peer-record": "^6.0.9",
-        "@multiformats/multiaddr": "^12.1.5",
-        "interface-datastore": "^8.2.0",
-        "it-all": "^3.0.2",
-        "mortice": "^3.0.1",
-        "multiformats": "^12.0.1",
-        "protons-runtime": "^5.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6"
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/peer-collections": "^5.1.7",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/peer-record": "^7.0.10",
+        "@multiformats/multiaddr": "^12.1.14",
+        "interface-datastore": "^8.2.11",
+        "it-all": "^3.0.4",
+        "mortice": "^3.0.4",
+        "multiformats": "^13.1.0",
+        "protons-runtime": "^5.4.0",
+        "uint8arraylist": "^2.4.8",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "@libp2p/peer-collections": {
+          "version": "5.1.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-collections/-/peer-collections-5.1.7.tgz",
+          "integrity": "sha512-9XXWSJtC7XvbH32h2bK3fygyzd4B2/JeWzsjX8cUDtO69jKNiVJglB8UqajZBuwLZSOQG5aRNWK4RWXJDrsh/w==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@libp2p/peer-id": "^4.0.7"
+          }
+        },
+        "@libp2p/peer-id": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+          "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "multiformats": "^13.1.0",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
       }
     },
     "@libp2p/pubsub": {
@@ -34496,6 +35835,22 @@
         "p-queue": "^7.3.4",
         "uint8arraylist": "^2.4.3",
         "uint8arrays": "^4.0.6"
+      },
+      "dependencies": {
+        "p-queue": {
+          "version": "7.4.1",
+          "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+          "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+          "requires": {
+            "eventemitter3": "^5.0.1",
+            "p-timeout": "^5.0.2"
+          }
+        },
+        "p-timeout": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+          "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew=="
+        }
       }
     },
     "@libp2p/utils": {
@@ -34665,6 +36020,35 @@
         "react-is": "^18.2.0"
       }
     },
+    "@multiformats/dns": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/@multiformats/dns/-/dns-1.0.5.tgz",
+      "integrity": "sha512-qP42WXdmK5D0KTMervvkE9N1l+1WbReMk9UwCmvE6iPterZgtNcNO5LQVfUrl0xqajQG9wDlom+a8YwA+sa5KQ==",
+      "requires": {
+        "@types/dns-packet": "^5.6.5",
+        "buffer": "^6.0.3",
+        "dns-packet": "^5.6.1",
+        "hashlru": "^2.3.0",
+        "p-queue": "^8.0.1",
+        "progress-events": "^1.0.0",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
+      }
+    },
     "@multiformats/mafmt": {
       "version": "12.1.6",
       "resolved": "https://registry.npmjs.org/@multiformats/mafmt/-/mafmt-12.1.6.tgz",
@@ -34674,41 +36058,41 @@
       }
     },
     "@multiformats/multiaddr": {
-      "version": "12.1.14",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.1.14.tgz",
-      "integrity": "sha512-1C0Mo73chzu7pTzTquuKs5vUtw70jhqg1i6pUNznGb0WV6RFa6vyB+D697Os5+cLx+DiItrAY6VzMtlGQsMzYg==",
+      "version": "12.2.1",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr/-/multiaddr-12.2.1.tgz",
+      "integrity": "sha512-UwjoArBbv64FlaetV4DDwh+PUMfzXUBltxQwdh+uTYnGFzVa8ZfJsn1vt1RJlJ6+Xtrm3RMekF/B+K338i2L5Q==",
       "requires": {
         "@chainsafe/is-ip": "^2.0.1",
         "@chainsafe/netmask": "^2.0.0",
         "@libp2p/interface": "^1.0.0",
-        "dns-over-http-resolver": "^3.0.2",
+        "@multiformats/dns": "^1.0.3",
         "multiformats": "^13.0.0",
         "uint8-varint": "^2.0.1",
         "uint8arrays": "^5.0.0"
       },
       "dependencies": {
         "@libp2p/interface": {
-          "version": "1.1.2",
-          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-          "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
           "requires": {
-            "@multiformats/multiaddr": "^12.1.10",
+            "@multiformats/multiaddr": "^12.1.14",
             "it-pushable": "^3.2.3",
             "it-stream-types": "^2.0.1",
-            "multiformats": "^13.0.0",
+            "multiformats": "^13.1.0",
             "progress-events": "^1.0.0",
-            "uint8arraylist": "^2.4.7"
+            "uint8arraylist": "^2.4.8"
           }
         },
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -34716,9 +36100,9 @@
       }
     },
     "@multiformats/multiaddr-matcher": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-matcher/-/multiaddr-matcher-1.1.2.tgz",
-      "integrity": "sha512-O7hO+TYsweMjNCqTYKYn8iki2GXA46mxmgqnsOb2Wpr6ca4dRGnPldWTai2WwTeZpQyRJ/7GE+N9zPTfP0xE+Q==",
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-matcher/-/multiaddr-matcher-1.2.0.tgz",
+      "integrity": "sha512-LH6yR7h3HSNKcxuvvi2UpLuowuVkYC6H9Y3jqmKuTai8XtKnXtW6NcDZFD/ooTBY+H4yX/scoJpjOalHrk5qdQ==",
       "requires": {
         "@chainsafe/is-ip": "^2.0.1",
         "@multiformats/multiaddr": "^12.0.0",
@@ -34726,16 +36110,16 @@
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         }
       }
     },
     "@multiformats/multiaddr-to-uri": {
-      "version": "9.0.7",
-      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.7.tgz",
-      "integrity": "sha512-i3ldtPMN6XJt+MCi34hOl0wGuGEHfWWMw6lmNag5BpckPwPTf9XGOOFMmh7ed/uO3Vjah/g173iOe61HTQVoBA==",
+      "version": "9.0.8",
+      "resolved": "https://registry.npmjs.org/@multiformats/multiaddr-to-uri/-/multiaddr-to-uri-9.0.8.tgz",
+      "integrity": "sha512-4eiN5iEiQfy2A98BxekUfW410L/ivg0sgjYSgSqmklnrBhK+QyMz4yqgfkub8xDTXOc7O5jp4+LVyM3ZqMeWNw==",
       "requires": {
         "@multiformats/multiaddr": "^12.0.0"
       }
@@ -34755,22 +36139,17 @@
       "integrity": "sha512-QCOA9cgf3Rc33owG0AYBB9wszz+Ul2kramWN8tXG44Gyciud/tbkEqvxRF/IpqQaBpRBNi9f4jdNxqB2CQCIXg=="
     },
     "@noble/curves": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.3.0.tgz",
-      "integrity": "sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==",
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.0.tgz",
+      "integrity": "sha512-p+4cb332SFCrReJkCYe8Xzm0OWi4Jji5jVdIZRL/PmacmDkFNw6MrrV+gGpiPxLHbV+zKFRywUWbaseT+tZRXg==",
       "requires": {
-        "@noble/hashes": "1.3.3"
+        "@noble/hashes": "1.4.0"
       }
     },
-    "@noble/ed25519": {
-      "version": "1.7.3",
-      "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-1.7.3.tgz",
-      "integrity": "sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ=="
-    },
     "@noble/hashes": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.3.3.tgz",
-      "integrity": "sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA=="
+      "version": "1.4.0",
+      "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz",
+      "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg=="
     },
     "@noble/secp256k1": {
       "version": "1.7.1",
@@ -36578,6 +37957,14 @@
         "@types/ms": "*"
       }
     },
+    "@types/dns-packet": {
+      "version": "5.6.5",
+      "resolved": "https://registry.npmjs.org/@types/dns-packet/-/dns-packet-5.6.5.tgz",
+      "integrity": "sha512-qXOC7XLOEe43ehtWJCMnQXvgcIpv6rPmQ1jXT98Ad8A3TB1Ue50jsCbSSSyuazScEuZ/Q026vHbrOTVkmwA+7Q==",
+      "requires": {
+        "@types/node": "*"
+      }
+    },
     "@types/estree": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
@@ -36780,6 +38167,22 @@
         "@types/react": "*"
       }
     },
+    "@types/readable-stream": {
+      "version": "4.0.10",
+      "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-4.0.10.tgz",
+      "integrity": "sha512-AbUKBjcC8SHmImNi4yK2bbjogQlkFSg7shZCcicxPQapniOlajG8GCc39lvXzCWX4lLRRs7DM3VAeSlqmEVZUA==",
+      "requires": {
+        "@types/node": "*",
+        "safe-buffer": "~5.1.1"
+      },
+      "dependencies": {
+        "safe-buffer": {
+          "version": "5.1.2",
+          "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+          "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
+        }
+      }
+    },
     "@types/resolve": {
       "version": "1.17.1",
       "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.17.1.tgz",
@@ -37246,39 +38649,13 @@
         }
       }
     },
-    "@waku/core": {
-      "version": "0.0.25",
-      "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.25.tgz",
-      "integrity": "sha512-YG6cRo82CaU92bf85hrN1s5FAtHlojaJ6I3pzOzRl7HAhhGVhQvfNgc1XHU1RiVkbw17ug8AapFPSy+A36gjvQ==",
-      "requires": {
-        "@noble/hashes": "^1.3.2",
-        "@waku/enr": "^0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
-        "debug": "^4.3.4",
-        "it-all": "^3.0.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-pipe": "^3.0.1",
-        "p-event": "^6.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uuid": "^9.0.0"
-      },
-      "dependencies": {
-        "uuid": {
-          "version": "9.0.1",
-          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
-          "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
-        }
-      }
-    },
     "@waku/dns-discovery": {
-      "version": "0.0.19",
-      "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.19.tgz",
-      "integrity": "sha512-K701xc+snE2NrvhORB7Wiyg4WXSGCjzE5LLCTeIaSzlB7eA1HbdU3wC57uiLdChqo495JPqMN/52TQ/m9nAwpQ==",
+      "version": "0.0.20",
+      "resolved": "https://registry.npmjs.org/@waku/dns-discovery/-/dns-discovery-0.0.20.tgz",
+      "integrity": "sha512-JnzR/B3iT33aWDg75lGkzM+4eXqZP5n/BlnjMyiXCXX+Du4arRveBg+812ZXZVVMQGLiM/aqM/JOPefKbTegOw==",
       "requires": {
-        "@waku/enr": "0.0.19",
-        "@waku/utils": "0.0.13",
+        "@waku/enr": "0.0.20",
+        "@waku/utils": "0.0.14",
         "debug": "^4.3.4",
         "dns-query": "^0.11.2",
         "hi-base32": "^0.5.1",
@@ -37286,112 +38663,640 @@
       }
     },
     "@waku/enr": {
-      "version": "0.0.19",
-      "resolved": "https://registry.npmjs.org/@waku/enr/-/enr-0.0.19.tgz",
-      "integrity": "sha512-SomeHKk9kZwYoCNLqSB7SQ9ngnAIdKfQ0JACsc20azdhTxLYAQ6gWrrDFAmXnYwRKNAJfl8A28XThtWnGIiUpA==",
+      "version": "0.0.20",
+      "resolved": "https://registry.npmjs.org/@waku/enr/-/enr-0.0.20.tgz",
+      "integrity": "sha512-dzTeESBxagggAaJ6xMCEaiB1PdNN+rLFuLF3mC/0iSgb6Ax2nl5lJmSVTsZpdkPuwiv+sZzt5KgaKzjQEvp0QA==",
       "requires": {
         "@ethersproject/rlp": "^5.7.0",
-        "@libp2p/crypto": "^1.0.17",
+        "@libp2p/crypto": "^3.0.2",
         "@libp2p/peer-id": "^3.0.3",
         "@multiformats/multiaddr": "^12.0.0",
         "@noble/secp256k1": "^1.7.1",
-        "@waku/utils": "0.0.13",
+        "@waku/utils": "0.0.14",
         "debug": "^4.3.4",
         "js-sha3": "^0.9.2"
       },
       "dependencies": {
         "@libp2p/crypto": {
-          "version": "1.0.17",
-          "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-1.0.17.tgz",
-          "integrity": "sha512-Oeg0Eb/EvAho0gVkOgemXEgrVxWaT3x/DpFgkBdZ9qGxwq75w/E/oPc7souqBz+l1swfz37GWnwV7bIb4Xv5Ag==",
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-3.0.4.tgz",
+          "integrity": "sha512-FzSwBo+RJOUzdzEwug5ZL4dAGKwEBWTLzj+EmUTHHY6c87+oLh571DQk/w0oYObSD9hYbcKePgSBaZeBx0JaZg==",
           "requires": {
-            "@libp2p/interface-keys": "^1.0.2",
-            "@libp2p/interfaces": "^3.2.0",
-            "@noble/ed25519": "^1.6.0",
-            "@noble/secp256k1": "^1.5.4",
-            "multiformats": "^11.0.0",
+            "@libp2p/interface": "^1.1.1",
+            "@noble/curves": "^1.1.0",
+            "@noble/hashes": "^1.3.1",
+            "multiformats": "^13.0.0",
             "node-forge": "^1.1.0",
             "protons-runtime": "^5.0.0",
             "uint8arraylist": "^2.4.3",
-            "uint8arrays": "^4.0.2"
+            "uint8arrays": "^5.0.0"
+          }
+        },
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
           }
         },
         "multiformats": {
-          "version": "11.0.2",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-11.0.2.tgz",
-          "integrity": "sha512-b5mYMkOkARIuVZCpvijFj9a6m5wMVLC7cf/jIPd5D/ARDOfLC5+IFkbgDXQgcU2goIsTD/O9NY4DI/Mt4OGvlg=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
         }
       }
     },
     "@waku/interfaces": {
-      "version": "0.0.20",
-      "resolved": "https://registry.npmjs.org/@waku/interfaces/-/interfaces-0.0.20.tgz",
-      "integrity": "sha512-6g2SRCKiAqtxElozXzPNHg68u/lxWSGL1LSXqwA0AAs+WYvK2vYfBM9ceUlbhDEk4ReCUAceUgZgdtdgKGflgA=="
+      "version": "0.0.21",
+      "resolved": "https://registry.npmjs.org/@waku/interfaces/-/interfaces-0.0.21.tgz",
+      "integrity": "sha512-6QbXx9IEBz9muSzjrnbaoXnjrMQIu1WOUyhMB6ZgOobgGWluwX/WOPuGGCpqvI7p5WhO0gaziphGVLdopdmRyw=="
     },
     "@waku/peer-exchange": {
-      "version": "0.0.18",
-      "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.18.tgz",
-      "integrity": "sha512-oRXuASG62SxiVUYdJL7JJAHsa0yORuHHNg1oxL4apVgbnxDXY6SPcvGR1tgpBzMweryPzzx1IqMOZ9tusFCwyA==",
+      "version": "0.0.19",
+      "resolved": "https://registry.npmjs.org/@waku/peer-exchange/-/peer-exchange-0.0.19.tgz",
+      "integrity": "sha512-T6eGHidBj49Lkw0fy3gKXbdJiyQ/0b6WYp8ZgJUySmtFCMmFQUEECbdHLx5iJFtocYmbGYFt04f+47dhoCyhog==",
       "requires": {
         "@libp2p/interfaces": "^3.3.2",
-        "@waku/core": "0.0.25",
-        "@waku/enr": "0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
+        "@waku/core": "0.0.26",
+        "@waku/enr": "0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
         "debug": "^4.3.4",
-        "it-all": "^3.0.3",
+        "it-all": "^3.0.4",
         "it-length-prefixed": "^9.0.1",
         "it-pipe": "^3.0.1"
+      },
+      "dependencies": {
+        "@libp2p/multistream-select": {
+          "version": "4.0.10",
+          "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+          "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+          "peer": true,
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "abortable-iterator": "^5.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-merge": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-pushable": "^3.2.0",
+            "it-reader": "^6.0.1",
+            "it-stream-types": "^2.0.1",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-id-factory": {
+          "version": "3.0.11",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+          "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+          "peer": true,
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-record": {
+          "version": "6.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+          "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+          "peer": true,
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/multiaddr": "^12.1.5",
+            "protons-runtime": "^5.0.0",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-store": {
+          "version": "9.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+          "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+          "peer": true,
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@multiformats/multiaddr": "^12.1.5",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "mortice": "^3.0.1",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@waku/core": {
+          "version": "0.0.26",
+          "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+          "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
+          "requires": {
+            "@noble/hashes": "^1.3.2",
+            "@waku/enr": "^0.0.20",
+            "@waku/interfaces": "0.0.21",
+            "@waku/proto": "0.0.6",
+            "@waku/utils": "0.0.14",
+            "debug": "^4.3.4",
+            "it-all": "^3.0.4",
+            "it-length-prefixed": "^9.0.1",
+            "it-pipe": "^3.0.1",
+            "p-event": "^6.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uuid": "^9.0.0"
+          }
+        },
+        "libp2p": {
+          "version": "0.46.21",
+          "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+          "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+          "peer": true,
+          "requires": {
+            "@achingbrain/nat-port-mapper": "^1.0.9",
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/interface-internal": "^0.1.9",
+            "@libp2p/keychain": "^3.0.8",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/multistream-select": "^4.0.6",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@libp2p/peer-store": "^9.0.9",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/mafmt": "^12.1.2",
+            "@multiformats/multiaddr": "^12.1.5",
+            "@multiformats/multiaddr-matcher": "^1.0.0",
+            "any-signal": "^4.1.1",
+            "datastore-core": "^9.0.1",
+            "delay": "^6.0.0",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "it-drain": "^3.0.2",
+            "it-filter": "^3.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-map": "^3.0.3",
+            "it-merge": "^3.0.0",
+            "it-pair": "^2.0.6",
+            "it-parallel": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-protobuf-stream": "^1.0.0",
+            "it-stream-types": "^2.0.1",
+            "merge-options": "^3.0.4",
+            "multiformats": "^12.0.1",
+            "p-defer": "^4.0.0",
+            "p-queue": "^7.3.4",
+            "p-retry": "^6.0.0",
+            "private-ip": "^3.0.0",
+            "protons-runtime": "^5.0.0",
+            "rate-limiter-flexible": "^3.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6",
+            "wherearewe": "^2.0.1",
+            "xsalsa20": "^1.1.0"
+          }
+        },
+        "p-queue": {
+          "version": "7.4.1",
+          "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+          "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+          "peer": true,
+          "requires": {
+            "eventemitter3": "^5.0.1",
+            "p-timeout": "^5.0.2"
+          }
+        },
+        "p-timeout": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+          "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+          "peer": true
+        },
+        "uuid": {
+          "version": "9.0.1",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+          "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+        }
       }
     },
     "@waku/proto": {
-      "version": "0.0.5",
-      "resolved": "https://registry.npmjs.org/@waku/proto/-/proto-0.0.5.tgz",
-      "integrity": "sha512-td0WKhUm+pcnpkbhuu5XV79ZcuM+f7b5swNIHHcqCaW5FaJeCtEhXsG8kNrt97kcDAHdr41lxFgQTRDlmAns4A==",
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/@waku/proto/-/proto-0.0.6.tgz",
+      "integrity": "sha512-KSlcpv8BRc/KeChIWfiz7Fska7N3FQhVOsgbV862/RMhj8dCiZPhWtNanuwipfe+GwWz5SMldowipBibukXSNA==",
       "requires": {
-        "protons-runtime": "^5.0.0"
+        "protons-runtime": "^5.0.2"
       }
     },
     "@waku/relay": {
-      "version": "0.0.8",
-      "resolved": "https://registry.npmjs.org/@waku/relay/-/relay-0.0.8.tgz",
-      "integrity": "sha512-H1DXlB7o6qo3dc+qtVFY8g8/jXlyYhSXEIiNU/4eHjCDt0fzl58JdT170QJMDuTQB8LswVzTMRUxFZM5/LTwXw==",
+      "version": "0.0.9",
+      "resolved": "https://registry.npmjs.org/@waku/relay/-/relay-0.0.9.tgz",
+      "integrity": "sha512-BfjPUVh4rIyZ82PPGBhCIv7nnx/WhrqkpkcXmmM38gsRDHDZSNCE28I3ILs2m+IBjBdeaT16BCq0dUVQD84m2A==",
       "requires": {
-        "@chainsafe/libp2p-gossipsub": "^10.1.0",
+        "@chainsafe/libp2p-gossipsub": "^10.1.1",
         "@noble/hashes": "^1.3.2",
-        "@waku/core": "0.0.25",
-        "@waku/interfaces": "0.0.20",
-        "@waku/proto": "0.0.5",
-        "@waku/utils": "0.0.13",
-        "chai": "^4.3.7",
+        "@waku/core": "0.0.26",
+        "@waku/interfaces": "0.0.21",
+        "@waku/proto": "0.0.6",
+        "@waku/utils": "0.0.14",
+        "chai": "^4.3.10",
         "debug": "^4.3.4",
-        "fast-check": "^3.13.1"
+        "fast-check": "^3.14.0"
+      },
+      "dependencies": {
+        "@libp2p/multistream-select": {
+          "version": "4.0.10",
+          "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+          "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+          "peer": true,
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "abortable-iterator": "^5.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-merge": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-pushable": "^3.2.0",
+            "it-reader": "^6.0.1",
+            "it-stream-types": "^2.0.1",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-id-factory": {
+          "version": "3.0.11",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+          "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+          "peer": true,
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-record": {
+          "version": "6.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+          "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+          "peer": true,
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/multiaddr": "^12.1.5",
+            "protons-runtime": "^5.0.0",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-store": {
+          "version": "9.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+          "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+          "peer": true,
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@multiformats/multiaddr": "^12.1.5",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "mortice": "^3.0.1",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@waku/core": {
+          "version": "0.0.26",
+          "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+          "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
+          "requires": {
+            "@noble/hashes": "^1.3.2",
+            "@waku/enr": "^0.0.20",
+            "@waku/interfaces": "0.0.21",
+            "@waku/proto": "0.0.6",
+            "@waku/utils": "0.0.14",
+            "debug": "^4.3.4",
+            "it-all": "^3.0.4",
+            "it-length-prefixed": "^9.0.1",
+            "it-pipe": "^3.0.1",
+            "p-event": "^6.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uuid": "^9.0.0"
+          }
+        },
+        "libp2p": {
+          "version": "0.46.21",
+          "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+          "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+          "peer": true,
+          "requires": {
+            "@achingbrain/nat-port-mapper": "^1.0.9",
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/interface-internal": "^0.1.9",
+            "@libp2p/keychain": "^3.0.8",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/multistream-select": "^4.0.6",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@libp2p/peer-store": "^9.0.9",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/mafmt": "^12.1.2",
+            "@multiformats/multiaddr": "^12.1.5",
+            "@multiformats/multiaddr-matcher": "^1.0.0",
+            "any-signal": "^4.1.1",
+            "datastore-core": "^9.0.1",
+            "delay": "^6.0.0",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "it-drain": "^3.0.2",
+            "it-filter": "^3.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-map": "^3.0.3",
+            "it-merge": "^3.0.0",
+            "it-pair": "^2.0.6",
+            "it-parallel": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-protobuf-stream": "^1.0.0",
+            "it-stream-types": "^2.0.1",
+            "merge-options": "^3.0.4",
+            "multiformats": "^12.0.1",
+            "p-defer": "^4.0.0",
+            "p-queue": "^7.3.4",
+            "p-retry": "^6.0.0",
+            "private-ip": "^3.0.0",
+            "protons-runtime": "^5.0.0",
+            "rate-limiter-flexible": "^3.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6",
+            "wherearewe": "^2.0.1",
+            "xsalsa20": "^1.1.0"
+          }
+        },
+        "p-queue": {
+          "version": "7.4.1",
+          "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+          "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+          "peer": true,
+          "requires": {
+            "eventemitter3": "^5.0.1",
+            "p-timeout": "^5.0.2"
+          }
+        },
+        "p-timeout": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+          "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew==",
+          "peer": true
+        },
+        "uuid": {
+          "version": "9.0.1",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+          "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+        }
       }
     },
     "@waku/sdk": {
-      "version": "0.0.21",
-      "resolved": "https://registry.npmjs.org/@waku/sdk/-/sdk-0.0.21.tgz",
-      "integrity": "sha512-LKG4lGJryco9hHa5fS4GaZ1sDze6MoEeZWyRAmt4uN0UtarKWfzDzIUiifTH3x1vgpcV0mioQPCgeVy3z+acYg==",
+      "version": "0.0.22",
+      "resolved": "https://registry.npmjs.org/@waku/sdk/-/sdk-0.0.22.tgz",
+      "integrity": "sha512-4ZnoYcnfuFYKtA738R6X/9RAoPM/cvG7PvkFp9y7wrnjKFBfb5/Ha36k20AkvdTAmdoUXmdl5g4i9q0iUapeBg==",
       "requires": {
-        "@chainsafe/libp2p-noise": "^13.0.0",
-        "@libp2p/mplex": "^9.0.5",
+        "@chainsafe/libp2p-noise": "^13.0.4",
+        "@libp2p/mplex": "^9.0.10",
         "@libp2p/websockets": "^7.0.5",
-        "@waku/core": "0.0.25",
-        "@waku/dns-discovery": "0.0.19",
-        "@waku/interfaces": "0.0.20",
-        "@waku/peer-exchange": "^0.0.18",
-        "@waku/relay": "0.0.8",
-        "@waku/utils": "0.0.13",
+        "@waku/core": "0.0.26",
+        "@waku/dns-discovery": "0.0.20",
+        "@waku/interfaces": "0.0.21",
+        "@waku/peer-exchange": "^0.0.19",
+        "@waku/relay": "0.0.9",
+        "@waku/utils": "0.0.14",
         "libp2p": "^0.46.14"
+      },
+      "dependencies": {
+        "@libp2p/multistream-select": {
+          "version": "4.0.10",
+          "resolved": "https://registry.npmjs.org/@libp2p/multistream-select/-/multistream-select-4.0.10.tgz",
+          "integrity": "sha512-f0BDv96L2yF9SZ0YXdg41JcGWwPBGZNAoeFGkna38SMFtj00NQWBOwAjqVdhrYVF58ymB0Ci6OfMzYv1XHVj/A==",
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "abortable-iterator": "^5.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-merge": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-pushable": "^3.2.0",
+            "it-reader": "^6.0.1",
+            "it-stream-types": "^2.0.1",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-id-factory": {
+          "version": "3.0.11",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id-factory/-/peer-id-factory-3.0.11.tgz",
+          "integrity": "sha512-BmXKgeyAGezPyoY/uni95t439+AE0eqEKMxjfkfy2Hv/LcJ9gdR3zjRl7Hzci1O12b+yeVFtYVU8DZtBCcsZjQ==",
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-record": {
+          "version": "6.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-record/-/peer-record-6.0.12.tgz",
+          "integrity": "sha512-8IItsbcPeIaFC5QMZD+gGl/dDbwLjE9nrmL7ZAOvMwcfZx+2AVZPN/6nubahO/wQrchpvBYiK3TxaWGnOH8sIA==",
+          "requires": {
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/multiaddr": "^12.1.5",
+            "protons-runtime": "^5.0.0",
+            "uint8-varint": "^2.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@libp2p/peer-store": {
+          "version": "9.0.12",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-store/-/peer-store-9.0.12.tgz",
+          "integrity": "sha512-rYpUUhvDI7GTfMFWNJ+HQoEOAVOxfp3t0bgJWLvUFKNtULojEk0znKHa6da7hX2KE06wM7ZEMfF23jZCmrwk1g==",
+          "requires": {
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@multiformats/multiaddr": "^12.1.5",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "mortice": "^3.0.1",
+            "multiformats": "^12.0.1",
+            "protons-runtime": "^5.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6"
+          }
+        },
+        "@waku/core": {
+          "version": "0.0.26",
+          "resolved": "https://registry.npmjs.org/@waku/core/-/core-0.0.26.tgz",
+          "integrity": "sha512-aarhaFrN/mDKB2tmVUSodMDt9V3CwllKFy8iYsy+fBcK1cBrv6Yj2nnl6PLDDhfxv+bylzS/OKEvEIAJ+be7YA==",
+          "requires": {
+            "@noble/hashes": "^1.3.2",
+            "@waku/enr": "^0.0.20",
+            "@waku/interfaces": "0.0.21",
+            "@waku/proto": "0.0.6",
+            "@waku/utils": "0.0.14",
+            "debug": "^4.3.4",
+            "it-all": "^3.0.4",
+            "it-length-prefixed": "^9.0.1",
+            "it-pipe": "^3.0.1",
+            "p-event": "^6.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uuid": "^9.0.0"
+          }
+        },
+        "libp2p": {
+          "version": "0.46.21",
+          "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
+          "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+          "requires": {
+            "@achingbrain/nat-port-mapper": "^1.0.9",
+            "@libp2p/crypto": "^2.0.8",
+            "@libp2p/interface": "^0.1.6",
+            "@libp2p/interface-internal": "^0.1.9",
+            "@libp2p/keychain": "^3.0.8",
+            "@libp2p/logger": "^3.1.0",
+            "@libp2p/multistream-select": "^4.0.6",
+            "@libp2p/peer-collections": "^4.0.8",
+            "@libp2p/peer-id": "^3.0.6",
+            "@libp2p/peer-id-factory": "^3.0.8",
+            "@libp2p/peer-record": "^6.0.9",
+            "@libp2p/peer-store": "^9.0.9",
+            "@libp2p/utils": "^4.0.7",
+            "@multiformats/mafmt": "^12.1.2",
+            "@multiformats/multiaddr": "^12.1.5",
+            "@multiformats/multiaddr-matcher": "^1.0.0",
+            "any-signal": "^4.1.1",
+            "datastore-core": "^9.0.1",
+            "delay": "^6.0.0",
+            "interface-datastore": "^8.2.0",
+            "it-all": "^3.0.2",
+            "it-drain": "^3.0.2",
+            "it-filter": "^3.0.1",
+            "it-first": "^3.0.1",
+            "it-handshake": "^4.1.3",
+            "it-length-prefixed": "^9.0.1",
+            "it-map": "^3.0.3",
+            "it-merge": "^3.0.0",
+            "it-pair": "^2.0.6",
+            "it-parallel": "^3.0.0",
+            "it-pipe": "^3.0.1",
+            "it-protobuf-stream": "^1.0.0",
+            "it-stream-types": "^2.0.1",
+            "merge-options": "^3.0.4",
+            "multiformats": "^12.0.1",
+            "p-defer": "^4.0.0",
+            "p-queue": "^7.3.4",
+            "p-retry": "^6.0.0",
+            "private-ip": "^3.0.0",
+            "protons-runtime": "^5.0.0",
+            "rate-limiter-flexible": "^3.0.0",
+            "uint8arraylist": "^2.4.3",
+            "uint8arrays": "^4.0.6",
+            "wherearewe": "^2.0.1",
+            "xsalsa20": "^1.1.0"
+          }
+        },
+        "p-queue": {
+          "version": "7.4.1",
+          "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
+          "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+          "requires": {
+            "eventemitter3": "^5.0.1",
+            "p-timeout": "^5.0.2"
+          }
+        },
+        "p-timeout": {
+          "version": "5.1.0",
+          "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
+          "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew=="
+        },
+        "uuid": {
+          "version": "9.0.1",
+          "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+          "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA=="
+        }
       }
     },
     "@waku/utils": {
-      "version": "0.0.13",
-      "resolved": "https://registry.npmjs.org/@waku/utils/-/utils-0.0.13.tgz",
-      "integrity": "sha512-sGZRJyYr7+QZpV2tlGJF48gKmwNdFha6rPKPgXiKDsz2YMhPlg70ffbGcND3bEfOwWmX4g/x5i3Oqwwl+HzwJw==",
+      "version": "0.0.14",
+      "resolved": "https://registry.npmjs.org/@waku/utils/-/utils-0.0.14.tgz",
+      "integrity": "sha512-BbrmT2ryL6ws+VXiihzL4IR9Yi8dH5JD6yTqkX14ilMu7DhiGqCGuyu2EQsng9x1/Bn1ulU60NQh3tFzENKAFQ==",
       "requires": {
-        "chai": "^4.3.8",
+        "@noble/hashes": "^1.3.2",
+        "@waku/interfaces": "0.0.21",
+        "chai": "^4.3.10",
         "debug": "^4.3.4",
         "uint8arrays": "^4.0.4"
       }
@@ -37424,6 +39329,14 @@
       "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
       "dev": true
     },
+    "abort-controller": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
+      "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
+      "requires": {
+        "event-target-shim": "^5.0.0"
+      }
+    },
     "abortable-iterator": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/abortable-iterator/-/abortable-iterator-5.0.1.tgz",
@@ -37678,6 +39591,16 @@
         }
       }
     },
+    "asn1js": {
+      "version": "3.0.5",
+      "resolved": "https://registry.npmjs.org/asn1js/-/asn1js-3.0.5.tgz",
+      "integrity": "sha512-FVnvrKJwpt9LP2lAMl8qZswRNm3T4q9CON+bxldk2iwk3FFpuwhx2FfinyitizWHsVYyaY+y5JzDR0rCMV5yTQ==",
+      "requires": {
+        "pvtsutils": "^1.3.2",
+        "pvutils": "^1.1.3",
+        "tslib": "^2.4.0"
+      }
+    },
     "assert": {
       "version": "2.1.0",
       "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz",
@@ -38016,6 +39939,31 @@
         "ws": "^7.4.5"
       }
     },
+    "bl": {
+      "version": "6.0.12",
+      "resolved": "https://registry.npmjs.org/bl/-/bl-6.0.12.tgz",
+      "integrity": "sha512-EnEYHilP93oaOa2MnmNEjAcovPS3JlQZOyzGXi3EyEpPhm9qWvdDp7BmAVEVusGzp8LlwQK56Av+OkDoRjzE0w==",
+      "requires": {
+        "@types/readable-stream": "^4.0.0",
+        "buffer": "^6.0.3",
+        "inherits": "^2.0.4",
+        "readable-stream": "^4.2.0"
+      },
+      "dependencies": {
+        "readable-stream": {
+          "version": "4.5.2",
+          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+          "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+          "requires": {
+            "abort-controller": "^3.0.0",
+            "buffer": "^6.0.3",
+            "events": "^3.3.0",
+            "process": "^0.11.10",
+            "string_decoder": "^1.3.0"
+          }
+        }
+      }
+    },
     "blob-to-buffer": {
       "version": "1.2.9",
       "resolved": "https://registry.npmjs.org/blob-to-buffer/-/blob-to-buffer-1.2.9.tgz",
@@ -38265,8 +40213,7 @@
     "buffer-from": {
       "version": "1.1.2",
       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
-      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
-      "devOptional": true
+      "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
     },
     "buffer-xor": {
       "version": "1.0.3",
@@ -38752,6 +40699,11 @@
       "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
       "dev": true
     },
+    "commist": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/commist/-/commist-3.2.0.tgz",
+      "integrity": "sha512-4PIMoPniho+LqXmpS5d3NuGYncG6XWlkBSVGiWycL22dd42OYdUGil2CWuzklaJoNxyxUSpO4MKIBU94viWNAw=="
+    },
     "common-tags": {
       "version": "1.8.2",
       "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz",
@@ -38819,6 +40771,17 @@
       "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
       "devOptional": true
     },
+    "concat-stream": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-2.0.0.tgz",
+      "integrity": "sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A==",
+      "requires": {
+        "buffer-from": "^1.0.0",
+        "inherits": "^2.0.3",
+        "readable-stream": "^3.0.2",
+        "typedarray": "^0.0.6"
+      }
+    },
     "confusing-browser-globals": {
       "version": "1.0.11",
       "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz",
@@ -39306,62 +41269,53 @@
       }
     },
     "datastore-core": {
-      "version": "9.2.7",
-      "resolved": "https://registry.npmjs.org/datastore-core/-/datastore-core-9.2.7.tgz",
-      "integrity": "sha512-S5ADNGRy1p6kHT6Khld+FThe1ITHuUiyYQ84VX2Kv8s6cXDiUuLlYPBIbZaWIgqR/JwxQCwa+5/08w6BZSIAow==",
+      "version": "9.2.9",
+      "resolved": "https://registry.npmjs.org/datastore-core/-/datastore-core-9.2.9.tgz",
+      "integrity": "sha512-wraWTPsbtdE7FFaVo3pwPuTB/zXsgwGGAm8BgBYwYAuzZCTS0MfXmd/HH1vR9s0/NFFjOVmBkGiWCvKxZ+QjVw==",
       "requires": {
-        "@libp2p/logger": "^4.0.1",
+        "@libp2p/logger": "^4.0.6",
         "err-code": "^3.0.1",
+        "interface-datastore": "^8.0.0",
         "interface-store": "^5.0.0",
-        "it-all": "^3.0.1",
-        "it-drain": "^3.0.1",
-        "it-filter": "^3.0.0",
-        "it-map": "^3.0.1",
-        "it-merge": "^3.0.1",
-        "it-pipe": "^3.0.0",
-        "it-pushable": "^3.0.0",
-        "it-sort": "^3.0.1",
-        "it-take": "^3.0.1",
-        "uint8arrays": "^5.0.0"
+        "it-drain": "^3.0.5",
+        "it-filter": "^3.0.4",
+        "it-map": "^3.0.5",
+        "it-merge": "^3.0.3",
+        "it-pipe": "^3.0.1",
+        "it-pushable": "^3.2.3",
+        "it-sort": "^3.0.4",
+        "it-take": "^3.0.4"
       },
       "dependencies": {
         "@libp2p/interface": {
-          "version": "1.1.2",
-          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.2.tgz",
-          "integrity": "sha512-uC4hxtEJuWiDiZfokkSNEEbCzdyZrqb5kp67Wc5PjZsySZ2IoImdIfie003yQXlB1xBp/XUJzdC6kVu4M7LUmg==",
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
           "requires": {
-            "@multiformats/multiaddr": "^12.1.10",
+            "@multiformats/multiaddr": "^12.1.14",
             "it-pushable": "^3.2.3",
             "it-stream-types": "^2.0.1",
-            "multiformats": "^13.0.0",
+            "multiformats": "^13.1.0",
             "progress-events": "^1.0.0",
-            "uint8arraylist": "^2.4.7"
+            "uint8arraylist": "^2.4.8"
           }
         },
         "@libp2p/logger": {
-          "version": "4.0.5",
-          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.5.tgz",
-          "integrity": "sha512-cXETMNZINnxeQBlfQ2S4di92FDDU89R7RHagrpebGrM7oLl5nf/Mw6myc23kGaM3/2YG3ko2rl9sYjemu0azTA==",
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+          "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
           "requires": {
-            "@libp2p/interface": "^1.1.2",
-            "@multiformats/multiaddr": "^12.1.10",
+            "@libp2p/interface": "^1.1.4",
+            "@multiformats/multiaddr": "^12.1.14",
             "debug": "^4.3.4",
-            "interface-datastore": "^8.2.0",
-            "multiformats": "^13.0.0"
+            "interface-datastore": "^8.2.11",
+            "multiformats": "^13.1.0"
           }
         },
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
-        },
-        "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
-          "requires": {
-            "multiformats": "^13.0.0"
-          }
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         }
       }
     },
@@ -39506,9 +41460,9 @@
           "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw=="
         },
         "npm-run-path": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.2.0.tgz",
-          "integrity": "sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==",
+          "version": "5.3.0",
+          "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz",
+          "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==",
           "requires": {
             "path-key": "^4.0.0"
           }
@@ -39651,13 +41605,12 @@
       "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
       "dev": true
     },
-    "dns-over-http-resolver": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/dns-over-http-resolver/-/dns-over-http-resolver-3.0.2.tgz",
-      "integrity": "sha512-5batkHOjCkuAfrFa+IPmt3jyeZqLtSMfAo1HQp3hfwtzgUwHooecTFplnYC093u5oRNL4CQHCXh3OfER7+vWrA==",
+    "dns-packet": {
+      "version": "5.6.1",
+      "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.1.tgz",
+      "integrity": "sha512-l4gcSouhcgIKRvyy99RNVOgxXiicE+2jZoNmaNmZ6JXiGajBOJAesk1OBlJuM5k2c+eudGdLxDqXuPCKIj6kpw==",
       "requires": {
-        "debug": "^4.3.4",
-        "receptacle": "^1.3.2"
+        "@leichtgewicht/ip-codec": "^2.0.1"
       }
     },
     "dns-query": {
@@ -40440,6 +42393,11 @@
       "resolved": "https://registry.npmjs.org/event-iterator/-/event-iterator-2.0.0.tgz",
       "integrity": "sha512-KGft0ldl31BZVV//jj+IAIGCxkvvUkkON+ScH6zfoX+l+omX6001ggyRSpI0Io2Hlro0ThXotswCtfzS8UkIiQ=="
     },
+    "event-target-shim": {
+      "version": "5.0.1",
+      "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
+      "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ=="
+    },
     "eventemitter3": {
       "version": "5.0.1",
       "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz",
@@ -40512,9 +42470,9 @@
       }
     },
     "fast-check": {
-      "version": "3.15.0",
-      "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.15.0.tgz",
-      "integrity": "sha512-iBz6c+EXL6+nI931x/sbZs1JYTZtLG6Cko0ouS8LRTikhDR7+wZk4TYzdRavlnByBs2G6+nuuJ7NYL9QplNt8Q==",
+      "version": "3.16.0",
+      "resolved": "https://registry.npmjs.org/fast-check/-/fast-check-3.16.0.tgz",
+      "integrity": "sha512-k8GtQHi4pJoRQ1gVDFQno+/FVkowo/ehiz/aCj9O/D7HRWb1sSFzNrw+iPVU8QlWtH+jNwbuN+dDVg3QkS56DQ==",
       "requires": {
         "pure-rand": "^6.0.0"
       }
@@ -40575,6 +42533,15 @@
       "resolved": "https://registry.npmjs.org/fast-readable-async-iterator/-/fast-readable-async-iterator-1.1.2.tgz",
       "integrity": "sha512-RvoeUNYOmXLr3j6ZcThapEWw8xoXZe0DHHIOvqJH2VOzbJ9lYLDSIpJg0hqoSkh9yzFPvR1aocuWl67ECPZrdQ=="
     },
+    "fast-unique-numbers": {
+      "version": "8.0.13",
+      "resolved": "https://registry.npmjs.org/fast-unique-numbers/-/fast-unique-numbers-8.0.13.tgz",
+      "integrity": "sha512-7OnTFAVPefgw2eBJ1xj2PGGR9FwYzSUso9decayHgCDX4sJkHLdcsYTytTg+tYv+wKF3U8gJuSBz2jJpQV4u/g==",
+      "requires": {
+        "@babel/runtime": "^7.23.8",
+        "tslib": "^2.6.2"
+      }
+    },
     "fast-url-parser": {
       "version": "1.1.3",
       "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz",
@@ -41062,6 +43029,11 @@
         "minimalistic-assert": "^1.0.1"
       }
     },
+    "hashlru": {
+      "version": "2.3.0",
+      "resolved": "https://registry.npmjs.org/hashlru/-/hashlru-2.3.0.tgz",
+      "integrity": "sha512-0cMsjjIC8I+D3M44pOQdsy0OHXGLVz6Z0beRuufhKa0KfaD2wGwAev6jILzXsd3/vpnNQJmWyZtIILqM1N+n5A=="
+    },
     "hasown": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz",
@@ -41112,6 +43084,11 @@
         }
       }
     },
+    "help-me": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/help-me/-/help-me-5.0.0.tgz",
+      "integrity": "sha512-7xgomUX6ADmcYzFik0HzAxh/73YlKR9bmFzf51CZwR+b6YtzU2m0u49hQCqV6SvlqIqsaxovfwdvbnsw3b/zpg=="
+    },
     "hi-base32": {
       "version": "0.5.1",
       "resolved": "https://registry.npmjs.org/hi-base32/-/hi-base32-0.5.1.tgz",
@@ -41374,23 +43351,23 @@
       "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q=="
     },
     "interface-datastore": {
-      "version": "8.2.10",
-      "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.10.tgz",
-      "integrity": "sha512-D8RuxMdjOPB+j6WMDJ+I2aXTDzUT6DIVjgzo1E+ODL7w8WrSFl9FXD2SYmgj6vVzdb7Kb5qmAI9pEnDZJz7ifg==",
+      "version": "8.2.11",
+      "resolved": "https://registry.npmjs.org/interface-datastore/-/interface-datastore-8.2.11.tgz",
+      "integrity": "sha512-9E0iXehfp/j0UbZ2mvlYB4K9pP7uQBCppfuy8WHs1EHF6wLQrM9+zwyX+8Qt6HnH4GKZRyXX/CNXm6oD4+QYgA==",
       "requires": {
         "interface-store": "^5.0.0",
-        "uint8arrays": "^5.0.0"
+        "uint8arrays": "^5.0.2"
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -41398,9 +43375,9 @@
       }
     },
     "interface-store": {
-      "version": "5.1.7",
-      "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.7.tgz",
-      "integrity": "sha512-DVMTgZ43NAdDtXL3QsEq8N0vuUYVBxiGbxN0uI0lrNasuX/CGSrU7bjOO2DaGTMNut4Pt3ae+VQYFvNtH4Oyeg=="
+      "version": "5.1.8",
+      "resolved": "https://registry.npmjs.org/interface-store/-/interface-store-5.1.8.tgz",
+      "integrity": "sha512-7na81Uxkl0vqk0CBPO5PvyTkdaJBaezwUJGsMOz7riPOq0rJt+7W31iaopaMICWea/iykUsvNlPx/Tc+MxC3/w=="
     },
     "internal-slot": {
       "version": "1.0.6",
@@ -41938,9 +43915,9 @@
       }
     },
     "it-byte-stream": {
-      "version": "1.0.7",
-      "resolved": "https://registry.npmjs.org/it-byte-stream/-/it-byte-stream-1.0.7.tgz",
-      "integrity": "sha512-oWO+TitZNn1a7+Yl0SM4UAyuylhJ3MmnnewVWO5shl0Bs1KQPMWuMB/6d0X0H1ygBlYCLAxF9EJqa19pWCnVRQ==",
+      "version": "1.0.8",
+      "resolved": "https://registry.npmjs.org/it-byte-stream/-/it-byte-stream-1.0.8.tgz",
+      "integrity": "sha512-H32LbN6kdX8HXqH68z5uivfkVYJEi5tIPRwIQNR5Qsx3uoDRhYdBRHzf3NOVAf6vqulFUSQLuU+Y0rs/QeWn3A==",
       "requires": {
         "it-stream-types": "^2.0.1",
         "p-defer": "^4.0.0",
@@ -41992,14 +43969,14 @@
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -42124,14 +44101,14 @@
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -45528,6 +47505,11 @@
       "resolved": "https://registry.npmjs.org/join-async-iterator/-/join-async-iterator-1.1.1.tgz",
       "integrity": "sha512-ATse+nuNeKZ9K1y27LKdvPe/GCe9R/u9dw9vI248e+vILeRK3IcJP4JUPAlSmKRCDK0cKhEwfmiw4Skqx7UnGQ=="
     },
+    "js-sdsl": {
+      "version": "4.3.0",
+      "resolved": "https://registry.npmjs.org/js-sdsl/-/js-sdsl-4.3.0.tgz",
+      "integrity": "sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ=="
+    },
     "js-sha3": {
       "version": "0.9.3",
       "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.9.3.tgz",
@@ -45745,55 +47727,137 @@
       }
     },
     "libp2p": {
-      "version": "0.46.21",
-      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-0.46.21.tgz",
-      "integrity": "sha512-p/3vCpw+ciizhlBofpzuez+4Fs8EeVFaVQZUQPwnQwycuOFcWLBhcqkOtv4KlqImFKOk+9TuyW1Xofjmr/wPnA==",
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/libp2p/-/libp2p-1.3.0.tgz",
+      "integrity": "sha512-nmwlV+yWMjOW8uBH/pfFhdTh5tGKRSb3QU8dyk/qqkaikdw+tpj58seAcMtEr1f2/oSi3Mu7GeB1z9Pb1O1wmA==",
       "requires": {
-        "@achingbrain/nat-port-mapper": "^1.0.9",
-        "@libp2p/crypto": "^2.0.8",
-        "@libp2p/interface": "^0.1.6",
-        "@libp2p/interface-internal": "^0.1.9",
-        "@libp2p/keychain": "^3.0.8",
-        "@libp2p/logger": "^3.1.0",
-        "@libp2p/multistream-select": "^4.0.6",
-        "@libp2p/peer-collections": "^4.0.8",
-        "@libp2p/peer-id": "^3.0.6",
-        "@libp2p/peer-id-factory": "^3.0.8",
-        "@libp2p/peer-record": "^6.0.9",
-        "@libp2p/peer-store": "^9.0.9",
-        "@libp2p/utils": "^4.0.7",
-        "@multiformats/mafmt": "^12.1.2",
-        "@multiformats/multiaddr": "^12.1.5",
-        "@multiformats/multiaddr-matcher": "^1.0.0",
+        "@libp2p/crypto": "^4.0.3",
+        "@libp2p/interface": "^1.1.4",
+        "@libp2p/interface-internal": "^1.0.9",
+        "@libp2p/logger": "^4.0.7",
+        "@libp2p/multistream-select": "^5.1.4",
+        "@libp2p/peer-collections": "^5.1.7",
+        "@libp2p/peer-id": "^4.0.7",
+        "@libp2p/peer-id-factory": "^4.0.7",
+        "@libp2p/peer-store": "^10.0.11",
+        "@libp2p/utils": "^5.2.6",
+        "@multiformats/dns": "^1.0.1",
+        "@multiformats/multiaddr": "^12.2.0",
         "any-signal": "^4.1.1",
-        "datastore-core": "^9.0.1",
-        "delay": "^6.0.0",
-        "interface-datastore": "^8.2.0",
-        "it-all": "^3.0.2",
-        "it-drain": "^3.0.2",
-        "it-filter": "^3.0.1",
-        "it-first": "^3.0.1",
-        "it-handshake": "^4.1.3",
-        "it-length-prefixed": "^9.0.1",
-        "it-map": "^3.0.3",
-        "it-merge": "^3.0.0",
-        "it-pair": "^2.0.6",
-        "it-parallel": "^3.0.0",
-        "it-pipe": "^3.0.1",
-        "it-protobuf-stream": "^1.0.0",
-        "it-stream-types": "^2.0.1",
+        "datastore-core": "^9.2.8",
+        "interface-datastore": "^8.2.11",
+        "it-merge": "^3.0.3",
+        "it-parallel": "^3.0.6",
         "merge-options": "^3.0.4",
-        "multiformats": "^12.0.1",
-        "p-defer": "^4.0.0",
-        "p-queue": "^7.3.4",
-        "p-retry": "^6.0.0",
-        "private-ip": "^3.0.0",
-        "protons-runtime": "^5.0.0",
-        "rate-limiter-flexible": "^3.0.0",
-        "uint8arraylist": "^2.4.3",
-        "uint8arrays": "^4.0.6",
-        "wherearewe": "^2.0.1",
-        "xsalsa20": "^1.1.0"
+        "multiformats": "^13.1.0",
+        "uint8arrays": "^5.0.2"
+      },
+      "dependencies": {
+        "@libp2p/crypto": {
+          "version": "4.0.3",
+          "resolved": "https://registry.npmjs.org/@libp2p/crypto/-/crypto-4.0.3.tgz",
+          "integrity": "sha512-UT11dl5Bxi9gyXXSyoIfi+7USk2S+46mY9W3t435tS9Y83BeFcdSLAmuiHaKZB/gtnngKfTdjUqEsPSOc79d+w==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@noble/curves": "^1.3.0",
+            "@noble/hashes": "^1.3.3",
+            "asn1js": "^3.0.5",
+            "multiformats": "^13.1.0",
+            "protons-runtime": "^5.4.0",
+            "uint8arraylist": "^2.4.8",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "@libp2p/interface": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface/-/interface-1.1.4.tgz",
+          "integrity": "sha512-gJXQycTF50tI02X/IlReAav4XoGPs3Yr917vNXsTUsZQRzQaPjbvKfXqA5hkLFpZ1lnxQ8wto/EVw4ca4XaL1A==",
+          "requires": {
+            "@multiformats/multiaddr": "^12.1.14",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "multiformats": "^13.1.0",
+            "progress-events": "^1.0.0",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "@libp2p/interface-internal": {
+          "version": "1.0.9",
+          "resolved": "https://registry.npmjs.org/@libp2p/interface-internal/-/interface-internal-1.0.9.tgz",
+          "integrity": "sha512-c5BzjXdRnuI+xjLiPjGMxh6QbU51wEIdz/OrgQqo2dKDjWz3Qu0due9H2wzzB8nvSNWTLHRr1ucVga3SrmbngQ==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@libp2p/peer-collections": "^5.1.7",
+            "@multiformats/multiaddr": "^12.1.14",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "@libp2p/logger": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/logger/-/logger-4.0.7.tgz",
+          "integrity": "sha512-oyICns7G18S4eDhbFHUwZ7gLQnZTBVQtUMmMgEmrs8LnQu2GvXADxmQAPPkKtLNSCvRudg4hN3hP04Y+vNvlBQ==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@multiformats/multiaddr": "^12.1.14",
+            "debug": "^4.3.4",
+            "interface-datastore": "^8.2.11",
+            "multiformats": "^13.1.0"
+          }
+        },
+        "@libp2p/peer-collections": {
+          "version": "5.1.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-collections/-/peer-collections-5.1.7.tgz",
+          "integrity": "sha512-9XXWSJtC7XvbH32h2bK3fygyzd4B2/JeWzsjX8cUDtO69jKNiVJglB8UqajZBuwLZSOQG5aRNWK4RWXJDrsh/w==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "@libp2p/peer-id": "^4.0.7"
+          }
+        },
+        "@libp2p/peer-id": {
+          "version": "4.0.7",
+          "resolved": "https://registry.npmjs.org/@libp2p/peer-id/-/peer-id-4.0.7.tgz",
+          "integrity": "sha512-kbslH0VBmcHO1Osr/qQlFljPOYuldUC6OdYM5c6Tdy+KFU/W4P9Ouv/4e7o3uX6LtlQ8QqIsZH+/bR6AJxC8Gw==",
+          "requires": {
+            "@libp2p/interface": "^1.1.4",
+            "multiformats": "^13.1.0",
+            "uint8arrays": "^5.0.2"
+          }
+        },
+        "@libp2p/utils": {
+          "version": "5.2.6",
+          "resolved": "https://registry.npmjs.org/@libp2p/utils/-/utils-5.2.6.tgz",
+          "integrity": "sha512-2Y2zi2TsyhOl+8TH27YZiEJWfdrKRogTzYRxQUKNTX03izXpUcwGsFLPjK7nR39LzYQrQ8si1Kx2ayA3zk7BKg==",
+          "requires": {
+            "@chainsafe/is-ip": "^2.0.2",
+            "@libp2p/interface": "^1.1.4",
+            "@libp2p/logger": "^4.0.7",
+            "@multiformats/multiaddr": "^12.1.14",
+            "@multiformats/multiaddr-matcher": "^1.1.2",
+            "delay": "^6.0.0",
+            "get-iterator": "^2.0.1",
+            "is-loopback-addr": "^2.0.2",
+            "it-pushable": "^3.2.3",
+            "it-stream-types": "^2.0.1",
+            "netmask": "^2.0.2",
+            "p-defer": "^4.0.0",
+            "race-event": "^1.2.0",
+            "race-signal": "^1.0.2",
+            "uint8arraylist": "^2.4.8"
+          }
+        },
+        "multiformats": {
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
+        },
+        "uint8arrays": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
+          "requires": {
+            "multiformats": "^13.0.0"
+          }
+        }
       }
     },
     "lie": {
@@ -46706,17 +48770,6 @@
         "observable-webworkers": "^2.0.1",
         "p-queue": "^8.0.1",
         "p-timeout": "^6.0.0"
-      },
-      "dependencies": {
-        "p-queue": {
-          "version": "8.0.1",
-          "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-8.0.1.tgz",
-          "integrity": "sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==",
-          "requires": {
-            "eventemitter3": "^5.0.1",
-            "p-timeout": "^6.1.2"
-          }
-        }
       }
     },
     "mp4-box-encoding": {
@@ -46744,6 +48797,65 @@
       "integrity": "sha512-Y4eqnAjp3mjy0eT+zPoMQ+P/ISOzjgRG/4kh4I5cRA4Tv0rPxTCBRadn3+j+boMF5id7IoLhrVq9NFWFPuzD9A==",
       "dev": true
     },
+    "mqtt": {
+      "version": "5.4.0",
+      "resolved": "https://registry.npmjs.org/mqtt/-/mqtt-5.4.0.tgz",
+      "integrity": "sha512-vU03lqX+IpMuHlPSRNl3+HSMNrz5vN5yyZ6wWyv23mDQj/1Lm1JlAT4pvQCfZq9jvsnmSwMqSkB5mm2WUOJw6Q==",
+      "requires": {
+        "@types/readable-stream": "^4.0.5",
+        "@types/ws": "^8.5.9",
+        "commist": "^3.2.0",
+        "concat-stream": "^2.0.0",
+        "debug": "^4.3.4",
+        "help-me": "^5.0.0",
+        "lru-cache": "^10.0.1",
+        "minimist": "^1.2.8",
+        "mqtt": "^5.2.0",
+        "mqtt-packet": "^9.0.0",
+        "number-allocator": "^1.0.14",
+        "readable-stream": "^4.4.2",
+        "reinterval": "^1.1.0",
+        "rfdc": "^1.3.0",
+        "split2": "^4.2.0",
+        "worker-timers": "^7.1.4",
+        "ws": "^8.14.2"
+      },
+      "dependencies": {
+        "lru-cache": {
+          "version": "10.2.0",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.2.0.tgz",
+          "integrity": "sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q=="
+        },
+        "readable-stream": {
+          "version": "4.5.2",
+          "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+          "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+          "requires": {
+            "abort-controller": "^3.0.0",
+            "buffer": "^6.0.3",
+            "events": "^3.3.0",
+            "process": "^0.11.10",
+            "string_decoder": "^1.3.0"
+          }
+        },
+        "ws": {
+          "version": "8.16.0",
+          "resolved": "https://registry.npmjs.org/ws/-/ws-8.16.0.tgz",
+          "integrity": "sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==",
+          "requires": {}
+        }
+      }
+    },
+    "mqtt-packet": {
+      "version": "9.0.0",
+      "resolved": "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-9.0.0.tgz",
+      "integrity": "sha512-8v+HkX+fwbodsWAZIZTI074XIoxVBOmPeggQuDFCGg1SqNcC+uoRMWu7J6QlJPqIUIJXmjNYYHxBBLr1Y/Df4w==",
+      "requires": {
+        "bl": "^6.0.8",
+        "debug": "^4.3.4",
+        "process-nextick-args": "^2.0.1"
+      }
+    },
     "mri": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
@@ -47050,6 +49162,15 @@
       "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==",
       "dev": true
     },
+    "number-allocator": {
+      "version": "1.0.14",
+      "resolved": "https://registry.npmjs.org/number-allocator/-/number-allocator-1.0.14.tgz",
+      "integrity": "sha512-OrL44UTVAvkKdOdRQZIJpLkAdjXGTRda052sN4sO77bKEzYYqWKMBjQvrJFzqygI99gL6Z4u2xctPW1tB8ErvA==",
+      "requires": {
+        "debug": "^4.3.1",
+        "js-sdsl": "4.3.0"
+      }
+    },
     "nwsapi": {
       "version": "2.2.7",
       "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz",
@@ -47212,9 +49333,9 @@
       "integrity": "sha512-Vb3QRvQ0Y5XnF40ZUWW7JfLogicVh/EnA5gBIvKDJoYpeI82+1E3AlB9yOcKFS0AhHrWVnAQO39fbR0G99IVEQ=="
     },
     "p-event": {
-      "version": "6.0.0",
-      "resolved": "https://registry.npmjs.org/p-event/-/p-event-6.0.0.tgz",
-      "integrity": "sha512-Xbfxd0CfZmHLGKXH32k1JKjQYX6Rkv0UtQdaFJ8OyNcf+c0oWCeXHc1C4CX/IESZLmcvfPa5aFIO/vCr5gqtag==",
+      "version": "6.0.1",
+      "resolved": "https://registry.npmjs.org/p-event/-/p-event-6.0.1.tgz",
+      "integrity": "sha512-Q6Bekk5wpzW5qIyUP4gdMEujObYstZl6DMMOSenwBvV0BlE5LkDwkjs5yHbZmdCEq2o4RJx4tE1vwxFVf2FG1w==",
       "requires": {
         "p-timeout": "^6.1.2"
       }
@@ -47238,19 +49359,12 @@
       }
     },
     "p-queue": {
-      "version": "7.4.1",
-      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-7.4.1.tgz",
-      "integrity": "sha512-vRpMXmIkYF2/1hLBKisKeVYJZ8S2tZ0zEAmIJgdVKP2nq0nh4qCdf8bgw+ZgKrkh71AOCaqzwbJJk1WtdcF3VA==",
+      "version": "8.0.1",
+      "resolved": "https://registry.npmjs.org/p-queue/-/p-queue-8.0.1.tgz",
+      "integrity": "sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==",
       "requires": {
         "eventemitter3": "^5.0.1",
-        "p-timeout": "^5.0.2"
-      },
-      "dependencies": {
-        "p-timeout": {
-          "version": "5.1.0",
-          "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-5.1.0.tgz",
-          "integrity": "sha512-auFDyzzzGZZZdHz3BtET9VEz0SE/uMEAx7uWfGPucfzEwwe/xH0iVeZibQmANYE/hp9T2+UUZT5m+BKyrDp3Ew=="
-        }
+        "p-timeout": "^6.1.2"
       }
     },
     "p-retry": {
@@ -48172,8 +50286,12 @@
     "process": {
       "version": "0.11.10",
       "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
-      "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
-      "dev": true
+      "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A=="
+    },
+    "process-nextick-args": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+      "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag=="
     },
     "progress-events": {
       "version": "1.0.0",
@@ -48233,23 +50351,24 @@
       }
     },
     "protons-runtime": {
-      "version": "5.2.2",
-      "resolved": "https://registry.npmjs.org/protons-runtime/-/protons-runtime-5.2.2.tgz",
-      "integrity": "sha512-o97rNPN9pE3cxOxjs/waZNRKlbY/DR11oc20rUvarWZgFzQLLLzJU0RFh5JPi6GJCN67VGVn9/FDIEtFblfB3A==",
+      "version": "5.4.0",
+      "resolved": "https://registry.npmjs.org/protons-runtime/-/protons-runtime-5.4.0.tgz",
+      "integrity": "sha512-XfA++W/WlQOSyjUyuF5lgYBfXZUEMP01Oh1C2dSwZAlF2e/ZrMRPfWonXj6BGM+o8Xciv7w0tsRMKYwYEuQvaw==",
       "requires": {
+        "uint8-varint": "^2.0.2",
         "uint8arraylist": "^2.4.3",
         "uint8arrays": "^5.0.1"
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -48308,6 +50427,19 @@
       "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz",
       "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA=="
     },
+    "pvtsutils": {
+      "version": "1.3.5",
+      "resolved": "https://registry.npmjs.org/pvtsutils/-/pvtsutils-1.3.5.tgz",
+      "integrity": "sha512-ARvb14YB9Nm2Xi6nBq1ZX6dAM0FsJnuk+31aUp4TrcZEdKUlSqOqsxJHUPJDNE3qiIp+iUPEIeR6Je/tgV7zsA==",
+      "requires": {
+        "tslib": "^2.6.1"
+      }
+    },
+    "pvutils": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/pvutils/-/pvutils-1.1.3.tgz",
+      "integrity": "sha512-pMpnA0qRdFp32b1sJl1wOJNxZLQ2cbQx+k6tjNtZ8CpvVhNqEPRgivZ2WOUev2YMajecdH7ctUPDvEe87nariQ=="
+    },
     "qrcode-generator": {
       "version": "1.4.4",
       "resolved": "https://registry.npmjs.org/qrcode-generator/-/qrcode-generator-1.4.4.tgz",
@@ -48349,6 +50481,11 @@
       "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz",
       "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag=="
     },
+    "race-event": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/race-event/-/race-event-1.2.0.tgz",
+      "integrity": "sha512-7EvAjTu9uuKa03Jky8yfSy6/SnnMTh6nouNmdeWv9b0dT8eDZC5ylx30cOR9YO9otQorVjjkIuSHQ5Ml/bKwMw=="
+    },
     "race-signal": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/race-signal/-/race-signal-1.0.2.tgz",
@@ -48633,14 +50770,6 @@
         "picomatch": "^2.2.1"
       }
     },
-    "receptacle": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/receptacle/-/receptacle-1.3.2.tgz",
-      "integrity": "sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==",
-      "requires": {
-        "ms": "^2.1.1"
-      }
-    },
     "record-cache": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/record-cache/-/record-cache-1.2.0.tgz",
@@ -48778,6 +50907,11 @@
         }
       }
     },
+    "reinterval": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/reinterval/-/reinterval-1.1.0.tgz",
+      "integrity": "sha512-QIRet3SYrGp0HUHO88jVskiG6seqUGC5iAG7AwI/BV4ypGcuqk9Du6YQBUOUqm9c8pw1eyLoIaONifRua1lsEQ=="
+    },
     "relateurl": {
       "version": "0.2.7",
       "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
@@ -48899,6 +51033,11 @@
       "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
       "dev": true
     },
+    "rfdc": {
+      "version": "1.3.1",
+      "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz",
+      "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg=="
+    },
     "rimraf": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -49442,6 +51581,11 @@
         "through": "2"
       }
     },
+    "split2": {
+      "version": "4.2.0",
+      "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
+      "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg=="
+    },
     "sprintf-js": {
       "version": "1.0.3",
       "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -50238,12 +52382,15 @@
       }
     },
     "trystero": {
-      "version": "0.15.2",
-      "resolved": "https://registry.npmjs.org/trystero/-/trystero-0.15.2.tgz",
-      "integrity": "sha512-kcSXs+AFlV0R5VJzW5B1+vR2qWIivuyQIO4L0VBns4Asd8Ll+JVRMJ9XEh/HKZfyo/OFTRMgIBRDvKSTdmWHqA==",
+      "version": "0.18.0",
+      "resolved": "https://registry.npmjs.org/trystero/-/trystero-0.18.0.tgz",
+      "integrity": "sha512-EjngCNB7Xw8ajmq7nlOf69+SRl0HJLcSNFe0E1CwN794X0cVtLDQewN+AtSzBj3RuMueaoIfOJfRvzVT1Mm1TA==",
       "requires": {
-        "@waku/sdk": "^0.0.21",
+        "@noble/curves": "^1.3.0",
+        "@waku/sdk": "^0.0.22",
         "firebase": "^10.6.0",
+        "libp2p": "^1.2.1",
+        "mqtt": "^5.3.5",
         "simple-peer-light": "^9.10.0"
       }
     },
@@ -50378,6 +52525,11 @@
         "is-typed-array": "^1.1.9"
       }
     },
+    "typedarray": {
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+      "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="
+    },
     "typeface-public-sans": {
       "version": "1.1.13",
       "resolved": "https://registry.npmjs.org/typeface-public-sans/-/typeface-public-sans-1.1.13.tgz",
@@ -50408,23 +52560,23 @@
       }
     },
     "uint8-varint": {
-      "version": "2.0.3",
-      "resolved": "https://registry.npmjs.org/uint8-varint/-/uint8-varint-2.0.3.tgz",
-      "integrity": "sha512-seXTM8ba4uuAMDgi3UHXPdDxCBKjWWZigW+F+1ESPhOZv9ekT1qmbdzYHLSNA+u+wHj10P55dQ41y2Qh7NOqiA==",
+      "version": "2.0.4",
+      "resolved": "https://registry.npmjs.org/uint8-varint/-/uint8-varint-2.0.4.tgz",
+      "integrity": "sha512-FwpTa7ZGA/f/EssWAb5/YV6pHgVF1fViKdW8cWaEarjB8t7NyofSWBdOTyFPaGuUG4gx3v1O3PQ8etsiOs3lcw==",
       "requires": {
         "uint8arraylist": "^2.0.0",
         "uint8arrays": "^5.0.0"
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -50440,14 +52592,14 @@
       },
       "dependencies": {
         "multiformats": {
-          "version": "13.0.1",
-          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.0.1.tgz",
-          "integrity": "sha512-bt3R5iXe2O8xpp3wkmQhC73b/lC4S2ihU8Dndwcsysqbydqb8N+bpP116qMcClZ17g58iSIwtXUTcg2zT4sniA=="
+          "version": "13.1.0",
+          "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-13.1.0.tgz",
+          "integrity": "sha512-HzdtdBwxsIkzpeXzhQ5mAhhuxcHbjEHH+JQoxt7hG/2HGFjjwyolLo7hbaexcnhoEuV4e0TNJ8kkpMjiEYY4VQ=="
         },
         "uint8arrays": {
-          "version": "5.0.1",
-          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.1.tgz",
-          "integrity": "sha512-ND5RpJAnPgHmZT7hWD/2T4BwRp04j8NLKvMKC/7bhiEwEjUMkQ4kvBKiH6hOqbljd6qJ2xS8reL3vl1e33grOQ==",
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-5.0.3.tgz",
+          "integrity": "sha512-6LBuKji28kHjgPJMkQ6GDaBb1lRwIhyOYq6pDGwYMoDPfImE9SkuYENVmR0yu9yGgs2clHUSY9fKDukR+AXfqQ==",
           "requires": {
             "multiformats": "^13.0.0"
           }
@@ -51815,6 +53967,37 @@
         "workbox-core": "7.0.0"
       }
     },
+    "worker-timers": {
+      "version": "7.1.4",
+      "resolved": "https://registry.npmjs.org/worker-timers/-/worker-timers-7.1.4.tgz",
+      "integrity": "sha512-8PRtiPAyeYukrY+iOUL+0tq4Zn5qyCHrTqFTtHxcESfIxGyulxNwyzQkybrYBKhnMWmx0bku3wxRfE1hts5R6Q==",
+      "requires": {
+        "@babel/runtime": "^7.24.0",
+        "tslib": "^2.6.2",
+        "worker-timers-broker": "^6.1.4",
+        "worker-timers-worker": "^7.0.67"
+      }
+    },
+    "worker-timers-broker": {
+      "version": "6.1.4",
+      "resolved": "https://registry.npmjs.org/worker-timers-broker/-/worker-timers-broker-6.1.4.tgz",
+      "integrity": "sha512-y3D+Yfj37lrItEMIlcfCm/IRueYtYKgpLlTG2wgTIZ9PSw0n/K4kweilgk3gTC4ahbQNVGT90lU+Rf7W4M5bsw==",
+      "requires": {
+        "@babel/runtime": "^7.24.0",
+        "fast-unique-numbers": "^8.0.13",
+        "tslib": "^2.6.2",
+        "worker-timers-worker": "^7.0.67"
+      }
+    },
+    "worker-timers-worker": {
+      "version": "7.0.67",
+      "resolved": "https://registry.npmjs.org/worker-timers-worker/-/worker-timers-worker-7.0.67.tgz",
+      "integrity": "sha512-0ZP2+v2fyiiiGaCEdWxMRUk5YxGFwWdRGB12ZfQy13vw8/27Xd+MW3ua56qlcM30nzjpddXXzLuEpHhGW+Pz7w==",
+      "requires": {
+        "@babel/runtime": "^7.24.0",
+        "tslib": "^2.6.2"
+      }
+    },
     "wormhole-crypto": {
       "version": "0.3.1",
       "resolved": "https://registry.npmjs.org/wormhole-crypto/-/wormhole-crypto-0.3.1.tgz",
diff --git a/package.json b/package.json
index 82e2def..7a138b2 100644
--- a/package.json
+++ b/package.json
@@ -42,7 +42,7 @@
     "sdp": "^3.2.0",
     "secure-file-transfer": "^0.0.7",
     "streamsaver": "^2.0.6",
-    "trystero": "^0.15.0",
+    "trystero": "^0.18.0",
     "typeface-public-sans": "^1.1.13",
     "typeface-roboto": "^1.1.13",
     "typescript": "^5.4.2",
diff --git a/src/components/Room/Room.tsx b/src/components/Room/Room.tsx
index 2c5fe28..c4dd5f1 100644
--- a/src/components/Room/Room.tsx
+++ b/src/components/Room/Room.tsx
@@ -60,10 +60,10 @@ export function Room({
   } = useRoom(
     {
       appId,
-      trackerUrls,
+      relayUrls: trackerUrls,
       rtcConfig,
       password,
-      trackerRedundancy: 4,
+      relayRedundancy: 4,
     },
     {
       roomId,
diff --git a/src/components/Room/useRoom.ts b/src/components/Room/useRoom.ts
index ca0032e..8ce539a 100644
--- a/src/components/Room/useRoom.ts
+++ b/src/components/Room/useRoom.ts
@@ -1,6 +1,6 @@
 import { useContext, useEffect, useMemo, useState } from 'react'
 import { BaseRoomConfig } from 'trystero'
-import { TorrentRoomConfig } from 'trystero/torrent'
+import { RelayConfig } from 'trystero/torrent'
 import { v4 as uuid } from 'uuid'
 import { useDebounce } from '@react-hook/debounce'
 
@@ -45,14 +45,14 @@ interface UseRoomConfig {
   timeService?: typeof time
 }
 
-interface UserMetadata {
+interface UserMetadata extends Record<string, any> {
   userId: string
   customUsername: string
   publicKeyString: string
 }
 
 export function useRoom(
-  { password, ...roomConfig }: BaseRoomConfig & TorrentRoomConfig,
+  { password, ...roomConfig }: BaseRoomConfig & RelayConfig,
   {
     roomId,
     userId,
diff --git a/src/lib/ConnectionTest/ConnectionTest.ts b/src/lib/ConnectionTest/ConnectionTest.ts
index 1523f04..fc31bbf 100644
--- a/src/lib/ConnectionTest/ConnectionTest.ts
+++ b/src/lib/ConnectionTest/ConnectionTest.ts
@@ -1,4 +1,4 @@
-import { getTrackers } from 'trystero/torrent'
+import { getRelaySockets } from 'trystero/torrent'
 import { rtcConfig } from 'config/rtcConfig'
 import { parseCandidate } from 'sdp'
 
@@ -104,17 +104,15 @@ export class ConnectionTest extends EventTarget {
   }
 
   testTrackerConnection() {
-    const trackers = getTrackers()
+    const relaySockets = Object.values(getRelaySockets())
 
-    const trackerSockets = Object.values(trackers)
-
-    if (trackerSockets.length === 0) {
+    if (relaySockets.length === 0) {
       // Trystero has not yet initialized tracker sockets
       this.trackerConnection = TrackerConnection.SEARCHING
       return this.trackerConnection
     }
 
-    const readyStates = trackerSockets.map(({ readyState }) => readyState)
+    const readyStates = relaySockets.map(({ readyState }) => readyState)
 
     const haveAllTrackerConnectionsFailed = readyStates.every(
       readyState => readyState === WebSocket.CLOSED
diff --git a/src/lib/PeerRoom/PeerRoom.ts b/src/lib/PeerRoom/PeerRoom.ts
index ed06ec5..64e8c92 100644
--- a/src/lib/PeerRoom/PeerRoom.ts
+++ b/src/lib/PeerRoom/PeerRoom.ts
@@ -1,5 +1,5 @@
-import { joinRoom, Room, BaseRoomConfig } from 'trystero'
-import { TorrentRoomConfig } from 'trystero/torrent'
+import { joinRoom, Room, BaseRoomConfig, DataPayload } from 'trystero'
+import { RelayConfig } from 'trystero/torrent'
 
 import { sleep } from 'lib/sleep'
 
@@ -27,7 +27,7 @@ const streamQueueAddDelay = 1000
 export class PeerRoom {
   private room: Room
 
-  private roomConfig: TorrentRoomConfig & BaseRoomConfig
+  private roomConfig: RelayConfig & BaseRoomConfig
 
   private peerJoinHandlers: Map<
     PeerHookType,
@@ -60,7 +60,7 @@ export class PeerRoom {
     this.isProcessingPendingStreams = false
   }
 
-  constructor(config: TorrentRoomConfig & BaseRoomConfig, roomId: string) {
+  constructor(config: RelayConfig & BaseRoomConfig, roomId: string) {
     this.roomConfig = config
     this.room = joinRoom(this.roomConfig, roomId)
 
@@ -167,7 +167,7 @@ export class PeerRoom {
     return peerConnections
   }
 
-  makeAction = <T>(namespace: string) => {
+  makeAction = <T extends DataPayload>(namespace: string) => {
     return this.room.makeAction<T>(namespace)
   }
 
diff --git a/src/models/chat.ts b/src/models/chat.ts
index 530580e..d9e9d72 100644
--- a/src/models/chat.ts
+++ b/src/models/chat.ts
@@ -1,4 +1,4 @@
-export interface UnsentMessage {
+export interface UnsentMessage extends Record<string, any> {
   id: string
   text: string
   timeSent: number
@@ -73,11 +73,11 @@ export const isInlineMedia = (
   return 'magnetURI' in message
 }
 
-export interface FileOfferMetadata {
+export interface FileOfferMetadata extends Record<string, any> {
   magnetURI: string
   isAllInlineMedia: boolean
 }
 
-export interface TypingStatus {
+export interface TypingStatus extends Record<string, any> {
   isTyping: boolean
 }