diff --git a/GameDemo.csproj b/GameDemo.csproj
index 710ebf8..a88e97c 100644
--- a/GameDemo.csproj
+++ b/GameDemo.csproj
@@ -41,7 +41,7 @@
   </ItemGroup>
   <ItemGroup>
     <!-- Production dependencies go here! -->
-    <PackageReference Include="System.IO.Abstractions" Version="21.2.8" />
+    <PackageReference Include="System.IO.Abstractions" Version="21.2.12" />
     <PackageReference Include="EnvironmentAbstractions" Version="5.0.0" />
     <PackageReference Include="GodotSharp.SourceGenerators" Version="2.5.0" PrivateAssets="all" OutputItemType="analyzer" />
     <PackageReference Include="Chickensoft.SaveFileBuilder" Version="1.1.0" />
diff --git a/package-lock.json b/package-lock.json
index f440a3e..9d6a15d 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,9 +12,9 @@
       }
     },
     "node_modules/@cspell/cspell-bundled-dicts": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.17.2.tgz",
-      "integrity": "sha512-t+DQtruJF2cYfXF5GC4F0O/PQR04hL5WH55R9oOaor5i7K8ejbw6+jex2LB0XbZFf3qBhXNSnMPuM3b/113LnA==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-bundled-dicts/-/cspell-bundled-dicts-8.17.3.tgz",
+      "integrity": "sha512-6uOF726o3JnExAUKM20OJJXZo+Qf9Jt64nkVwnVXx7Upqr5I9Pb1npYPEAIpUA03SnWYmKwUIqhAmkwrN+bLPA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -22,19 +22,19 @@
         "@cspell/dict-al": "^1.1.0",
         "@cspell/dict-aws": "^4.0.9",
         "@cspell/dict-bash": "^4.2.0",
-        "@cspell/dict-companies": "^3.1.12",
+        "@cspell/dict-companies": "^3.1.13",
         "@cspell/dict-cpp": "^6.0.3",
         "@cspell/dict-cryptocurrencies": "^5.0.4",
         "@cspell/dict-csharp": "^4.0.6",
         "@cspell/dict-css": "^4.0.17",
         "@cspell/dict-dart": "^2.3.0",
-        "@cspell/dict-data-science": "^2.0.6",
+        "@cspell/dict-data-science": "^2.0.7",
         "@cspell/dict-django": "^4.1.4",
         "@cspell/dict-docker": "^1.1.12",
         "@cspell/dict-dotnet": "^5.0.9",
         "@cspell/dict-elixir": "^4.0.7",
-        "@cspell/dict-en_us": "^4.3.29",
-        "@cspell/dict-en-common-misspellings": "^2.0.8",
+        "@cspell/dict-en_us": "^4.3.30",
+        "@cspell/dict-en-common-misspellings": "^2.0.9",
         "@cspell/dict-en-gb": "1.1.33",
         "@cspell/dict-filetypes": "^3.0.10",
         "@cspell/dict-flutter": "^1.1.0",
@@ -44,7 +44,7 @@
         "@cspell/dict-gaming-terms": "^1.1.0",
         "@cspell/dict-git": "^3.0.4",
         "@cspell/dict-golang": "^6.0.18",
-        "@cspell/dict-google": "^1.0.5",
+        "@cspell/dict-google": "^1.0.8",
         "@cspell/dict-haskell": "^4.0.5",
         "@cspell/dict-html": "^4.0.11",
         "@cspell/dict-html-symbol-entities": "^4.0.3",
@@ -59,17 +59,17 @@
         "@cspell/dict-markdown": "^2.0.9",
         "@cspell/dict-monkeyc": "^1.0.10",
         "@cspell/dict-node": "^5.0.6",
-        "@cspell/dict-npm": "^5.1.22",
+        "@cspell/dict-npm": "^5.1.24",
         "@cspell/dict-php": "^4.0.14",
         "@cspell/dict-powershell": "^5.0.14",
-        "@cspell/dict-public-licenses": "^2.0.12",
-        "@cspell/dict-python": "^4.2.14",
+        "@cspell/dict-public-licenses": "^2.0.13",
+        "@cspell/dict-python": "^4.2.15",
         "@cspell/dict-r": "^2.1.0",
         "@cspell/dict-ruby": "^5.0.7",
         "@cspell/dict-rust": "^4.0.11",
         "@cspell/dict-scala": "^5.0.7",
         "@cspell/dict-shell": "^1.1.0",
-        "@cspell/dict-software-terms": "^4.2.2",
+        "@cspell/dict-software-terms": "^4.2.4",
         "@cspell/dict-sql": "^2.2.0",
         "@cspell/dict-svelte": "^1.0.6",
         "@cspell/dict-swift": "^2.0.5",
@@ -82,22 +82,22 @@
       }
     },
     "node_modules/@cspell/cspell-json-reporter": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.17.2.tgz",
-      "integrity": "sha512-9QFzuSApaK7SYB50iCTRIUDjFZf6DXTFj8+qTR2cky+/YmEcHDpJieJVCd3STONO4m2JyqIsV7faEuA6M0YcHg==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-json-reporter/-/cspell-json-reporter-8.17.3.tgz",
+      "integrity": "sha512-RWSfyHOin/d9CqLjz00JMvPkag3yUSsQZr6G9BnCT5cMEO/ws8wQZzA54CNj/LAOccbknTX65SSroPPAtxs56w==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-types": "8.17.2"
+        "@cspell/cspell-types": "8.17.3"
       },
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/@cspell/cspell-pipe": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.17.2.tgz",
-      "integrity": "sha512-LOTKK+hZSUc7vaN8SBEOcv+9dMYbo84awbsjjdI+HkKVBfTt3Lzlu6IJImw39L6pTDAJ1ZxOUdWO89jcxpyihg==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-pipe/-/cspell-pipe-8.17.3.tgz",
+      "integrity": "sha512-DqqSWKt9NLWPGloYxZTpzUhgdW8ObMkZmOOF6TyqpJ4IbckEct8ULgskNorTNRlmmjLniaNgvg6JSHuYO3Urxw==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -105,9 +105,9 @@
       }
     },
     "node_modules/@cspell/cspell-resolver": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.17.2.tgz",
-      "integrity": "sha512-Z2ndlzVIiXOCBnQby9q+OXcxeddiuCi//pnhO9Jf6Ixgthn+Yg7bwzAnHu+CM1SJaQnZCntGyimdxfojm+WDdA==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-resolver/-/cspell-resolver-8.17.3.tgz",
+      "integrity": "sha512-yQlVaIsWiax6RRuuacZs++kl6Y9rwH9ZkVlsG9fhdeCJ5Xf3WCW+vmX1chzhhKDzRr8CF9fsvb1uagd/5/bBYA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -118,9 +118,9 @@
       }
     },
     "node_modules/@cspell/cspell-service-bus": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.17.2.tgz",
-      "integrity": "sha512-Cp4kVxJRyyDRd5RVTASlu+ygWG+dgy6GyH7lzb6P8SOXt1mxzCBK6Q5Dc1XHAsvhRaLrnMziCO/5Pj9/0DKs6w==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-service-bus/-/cspell-service-bus-8.17.3.tgz",
+      "integrity": "sha512-CC3nob/Kbuesz5WTW+LjAHnDFXJrA49pW5ckmbufJxNnoAk7EJez/qr7/ELMTf6Fl3A5xZ776Lhq7738Hy/fmQ==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -128,9 +128,9 @@
       }
     },
     "node_modules/@cspell/cspell-types": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.17.2.tgz",
-      "integrity": "sha512-4kMBhX92p0pchEzYTpyLCoe/bUJ29YYvMINTeHTd//hLQh0ZAyMGY1opDm1tqaXX0qpYmWG60KcvN4fCR0i6lw==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/cspell-types/-/cspell-types-8.17.3.tgz",
+      "integrity": "sha512-ozgeuSioX9z2wtlargfgdw3LKwDFAfm8gxu+xwNREvXiLsevb+lb7ZlY5/ay+MahqR5Hfs7XzYzBLTKL/ldn9g==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -169,9 +169,9 @@
       }
     },
     "node_modules/@cspell/dict-companies": {
-      "version": "3.1.12",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.1.12.tgz",
-      "integrity": "sha512-99FxBNdLOQc3nVQ663Xh7JqDLbIy/AdqOecQ5bk3HpmXpSkoDvTT7XCUU5nQZvmFBrrQlXFKlRRYjLfTEOUDdA==",
+      "version": "3.1.13",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-companies/-/dict-companies-3.1.13.tgz",
+      "integrity": "sha512-EAaFMxnSG4eQKup9D81EnWAYIzorLWG7b7Zzf+Suu0bVeFBpCYESss/EWtnmb5ZZNfKAGxtoMqfL3vRfyJERIQ==",
       "dev": true,
       "license": "MIT"
     },
@@ -211,9 +211,9 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-data-science": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-2.0.6.tgz",
-      "integrity": "sha512-gOYKZOg358yhnnQfr1/f232REmjeIymXUHJdrLEMPirluv2rzMWvEBBazqRVQ++jMUNg9IduVI0v096ZWMDekA==",
+      "version": "2.0.7",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-data-science/-/dict-data-science-2.0.7.tgz",
+      "integrity": "sha512-XhAkK+nSW6zmrnWzusmZ1BpYLc62AWYHZc2p17u4nE2Z9XG5DleG55PCZxXQTKz90pmwlhFM9AfpkJsYaBWATA==",
       "dev": true,
       "license": "MIT"
     },
@@ -246,16 +246,16 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-en_us": {
-      "version": "4.3.29",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.29.tgz",
-      "integrity": "sha512-7kHP0sJ271oS5RqakxvhWvHFoCUFCBDV6+cgIRIpKwW0aYVB4F2AwElGsdeE/XEmihhYUje7e/e6X3IEWHrcrQ==",
+      "version": "4.3.30",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-en_us/-/dict-en_us-4.3.30.tgz",
+      "integrity": "sha512-p0G5fByj5fUnMyFUlkN3kaqE3nuQkqpYV47Gn9n8k2TszsdLY55xj9UoFE4YIcjOiyU1bR/YDJ5daiPMYXTJ/A==",
       "dev": true,
       "license": "MIT"
     },
     "node_modules/@cspell/dict-en-common-misspellings": {
-      "version": "2.0.8",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.8.tgz",
-      "integrity": "sha512-l1u/pDjwrPyWwBd1hCkZhdsK8yLbLFPD2xWz+1tFFI7WaV9ckDZoF3woRc/0wFGRy53yrfSAVuwhoYOQnHe/fA==",
+      "version": "2.0.9",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-en-common-misspellings/-/dict-en-common-misspellings-2.0.9.tgz",
+      "integrity": "sha512-O/jAr1VNtuyCFckbTmpeEf43ZFWVD9cJFvWaA6rO2IVmLirJViHWJUyBZOuQcesSplzEIw80MAYmnK06/MDWXQ==",
       "dev": true,
       "license": "CC BY-SA 4.0"
     },
@@ -323,9 +323,9 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-google": {
-      "version": "1.0.5",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-google/-/dict-google-1.0.5.tgz",
-      "integrity": "sha512-KNrzfUsoFat94slWzo36g601sIGz6KtE4kBMM0gpqwFLK/MXRyaW65IL4SwysY0PEhuRzg9spLLMnUXuVcY2hQ==",
+      "version": "1.0.8",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-google/-/dict-google-1.0.8.tgz",
+      "integrity": "sha512-BnMHgcEeaLyloPmBs8phCqprI+4r2Jb8rni011A8hE+7FNk7FmLE3kiwxLFrcZnnb7eqM0agW4zUaNoB0P+z8A==",
       "dev": true,
       "license": "MIT"
     },
@@ -434,9 +434,9 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-npm": {
-      "version": "5.1.22",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.1.22.tgz",
-      "integrity": "sha512-fZBTn8QHr8pAv1/I14CmdDWpVkovCfYpSYiGfV1SZkOjrsKLzPxsP84eaP3RijbFtYj3GMplVN27FR3H5oHfiw==",
+      "version": "5.1.24",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-npm/-/dict-npm-5.1.24.tgz",
+      "integrity": "sha512-yAyyHetElLR236sqWQkBtiLbzCGexV5zzLMHyQPptKQQK88BTQR5f9wXW2EtSgJw/4gUchpSWQWxMlkIfK/iQQ==",
       "dev": true,
       "license": "MIT"
     },
@@ -455,20 +455,20 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-public-licenses": {
-      "version": "2.0.12",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.12.tgz",
-      "integrity": "sha512-obreJMVbz8ZrXyc60PcS/B2FwXaO3AWPO2x50zrI/n4UDuBr/UdPb6M1q++6c08n+151I35GEx52xRFiToSg4g==",
+      "version": "2.0.13",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-public-licenses/-/dict-public-licenses-2.0.13.tgz",
+      "integrity": "sha512-1Wdp/XH1ieim7CadXYE7YLnUlW0pULEjVl9WEeziZw3EKCAw8ZI8Ih44m4bEa5VNBLnuP5TfqC4iDautAleQzQ==",
       "dev": true,
       "license": "MIT"
     },
     "node_modules/@cspell/dict-python": {
-      "version": "4.2.14",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.2.14.tgz",
-      "integrity": "sha512-NZ/rsTH5gqTlEwbSg0vn5b1TsyzrUvA6ykwCVCwsVDdlQAS82cyDsF9JqHp8S4d6PFykmkfSxtAXYyOUr0KCbg==",
+      "version": "4.2.15",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-python/-/dict-python-4.2.15.tgz",
+      "integrity": "sha512-VNXhj0Eh+hdHN89MgyaoSAexBQKmYtJaMhucbMI7XmBs4pf8fuFFN3xugk51/A4TZJr8+RImdFFsGMOw+I4bDA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/dict-data-science": "^2.0.6"
+        "@cspell/dict-data-science": "^2.0.7"
       }
     },
     "node_modules/@cspell/dict-r": {
@@ -507,9 +507,9 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dict-software-terms": {
-      "version": "4.2.2",
-      "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-4.2.2.tgz",
-      "integrity": "sha512-cgteXRzx2W/Ug7QSdFJrVxLES7krrZEjZ9J6sXRWOsVYFpgu2Gup8NKmjKOZ8NTnCjHQFrMnbmKdv56q9Kwixw==",
+      "version": "4.2.4",
+      "resolved": "https://registry.npmjs.org/@cspell/dict-software-terms/-/dict-software-terms-4.2.4.tgz",
+      "integrity": "sha512-GRkuaFfjFHPYynyRMuisKyE3gRiVK0REClRWfnH9+5iCs5TKDURsMpWJGNsgQ6N5jAKKrtWXVKjepkDHjMldjQ==",
       "dev": true,
       "license": "MIT"
     },
@@ -556,13 +556,13 @@
       "license": "MIT"
     },
     "node_modules/@cspell/dynamic-import": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.17.2.tgz",
-      "integrity": "sha512-n3AVbyBlTn/pLtYK62mqgDfJIuQHUTY/k8SMUCjyjfgoqd3LcKhS1PmbLfDWPMTODK30cSMMTLejjy2bL6ksEw==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/dynamic-import/-/dynamic-import-8.17.3.tgz",
+      "integrity": "sha512-Kg6IJhGHPv+9OxpxaXUpcqgnHEOhMLRWHLyx7FADZ+CJyO4AVeWQfhpTRM6KXhzIl7dPlLG1g8JAQxaoy88KTw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/url": "8.17.2",
+        "@cspell/url": "8.17.3",
         "import-meta-resolve": "^4.1.0"
       },
       "engines": {
@@ -570,9 +570,9 @@
       }
     },
     "node_modules/@cspell/filetypes": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/filetypes/-/filetypes-8.17.2.tgz",
-      "integrity": "sha512-2B+dB4Ls2xiOjg+vEEbAuJTHtMfXSihVzfLGnj9+qUfq47iqrz4ZBvCOfZhYdiVaaZJoZUgIw8ljrUfqFzYDAg==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/filetypes/-/filetypes-8.17.3.tgz",
+      "integrity": "sha512-UFqRmJPccOSo+RYP/jZ4cr0s7ni37GrvnNAg1H/qIIxfmBYsexTAmsNzMqxp1M31NeI1Cx3LL7PspPMT0ms+7w==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -580,9 +580,9 @@
       }
     },
     "node_modules/@cspell/strong-weak-map": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.17.2.tgz",
-      "integrity": "sha512-LbbhdVwtqyJ71X+O7e2PqpDp7zLiY8jmW2CJFLjZYWTUawgav2bpwECGq6O9Gnwqe+fj7yWxGJFDSpXQcCJQAw==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/strong-weak-map/-/strong-weak-map-8.17.3.tgz",
+      "integrity": "sha512-l/CaFc3CITI/dC+whEBZ05Om0KXR3V2whhVOWOBPIqA5lCjWAyvWWvmFD+CxWd0Hs6Qcb/YDnMyJW14aioXN4g==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -590,9 +590,9 @@
       }
     },
     "node_modules/@cspell/url": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/@cspell/url/-/url-8.17.2.tgz",
-      "integrity": "sha512-yy4eYWNX2iutXmy4Igbn/hL/NYaNt94DylohPtgVr0Zxnn/AAArt9Bv1KXPpjB8VFy2wzzPzWmZ+MWDUVpHCbg==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/@cspell/url/-/url-8.17.3.tgz",
+      "integrity": "sha512-gcsCz8g0qY94C8RXiAlUH/89n84Q9RSptP91XrvnLOT+Xva9Aibd7ywd5k9ameuf8Nagyl0ezB1MInZ30S9SRw==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -672,9 +672,9 @@
       }
     },
     "node_modules/commander": {
-      "version": "13.0.0",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-13.0.0.tgz",
-      "integrity": "sha512-oPYleIY8wmTVzkvQq10AEok6YcTC4sRUBl8F9gVuwchGVUCTbl/vhLTaQqutuuySYOsu8YTgV+OxKc/8Yvx+mQ==",
+      "version": "13.1.0",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-13.1.0.tgz",
+      "integrity": "sha512-/rFeCpNJQbhSZjGVwO9RFV3xPqbnERS8MmIQzCtD/zl6gpJuV/bMLuN92oG3F7d8oDEHHRrujSXNUr8fpjntKw==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -706,25 +706,25 @@
       "license": "MIT"
     },
     "node_modules/cspell": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell/-/cspell-8.17.2.tgz",
-      "integrity": "sha512-y+INkxDa+M9f+gsyyMLjKh1tF20r2g5Gn22peSRJglrNLQtmDuRtDT9vyDHANXZcH5g6pHDnENQu/+P2Tiyu8Q==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell/-/cspell-8.17.3.tgz",
+      "integrity": "sha512-fBZg674Dir9y/FWMwm2JyixM/1eB2vnqHJjRxOgGS/ZiZ3QdQ3LkK02Aqvlni8ffWYDZnYnYY9rfWmql9bb42w==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-json-reporter": "8.17.2",
-        "@cspell/cspell-pipe": "8.17.2",
-        "@cspell/cspell-types": "8.17.2",
-        "@cspell/dynamic-import": "8.17.2",
-        "@cspell/url": "8.17.2",
+        "@cspell/cspell-json-reporter": "8.17.3",
+        "@cspell/cspell-pipe": "8.17.3",
+        "@cspell/cspell-types": "8.17.3",
+        "@cspell/dynamic-import": "8.17.3",
+        "@cspell/url": "8.17.3",
         "chalk": "^5.4.1",
         "chalk-template": "^1.1.0",
-        "commander": "^13.0.0",
-        "cspell-dictionary": "8.17.2",
-        "cspell-gitignore": "8.17.2",
-        "cspell-glob": "8.17.2",
-        "cspell-io": "8.17.2",
-        "cspell-lib": "8.17.2",
+        "commander": "^13.1.0",
+        "cspell-dictionary": "8.17.3",
+        "cspell-gitignore": "8.17.3",
+        "cspell-glob": "8.17.3",
+        "cspell-io": "8.17.3",
+        "cspell-lib": "8.17.3",
         "fast-json-stable-stringify": "^2.1.0",
         "file-entry-cache": "^9.1.0",
         "get-stdin": "^9.0.0",
@@ -743,13 +743,13 @@
       }
     },
     "node_modules/cspell-config-lib": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.17.2.tgz",
-      "integrity": "sha512-g08lRd/smLk2je0j7HlCjdDa0dSTyI2oRP3gScWlsyXjb4NSr9qO0Wzyn5BfPgrqFdS/z4dXbHe+tnLQZCt9iQ==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-config-lib/-/cspell-config-lib-8.17.3.tgz",
+      "integrity": "sha512-+N32Q6xck3D2RqZIFwq8s0TnzHYMpyh4bgNtYqW5DIP3TLDiA4/MJGjwmLKAg/s9dkre6n8/++vVli3MZAOhIg==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-types": "8.17.2",
+        "@cspell/cspell-types": "8.17.3",
         "comment-json": "^4.2.5",
         "yaml": "^2.7.0"
       },
@@ -758,15 +758,15 @@
       }
     },
     "node_modules/cspell-dictionary": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.17.2.tgz",
-      "integrity": "sha512-2JC9RRsZruCs3AHId/8X63fSxDoF94dleRp8y/dXS9LIX7NruofohUJwzc/3tlgzCWWdaek1RXhO5xaYX74QtA==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-dictionary/-/cspell-dictionary-8.17.3.tgz",
+      "integrity": "sha512-89I/lpQKdkX17RCFrUIJnc70Rjfpup/o+ynHZen0hUxGTfLsEJPrK6H2oGvic3Yrv5q8IOtwM1p8vqPqBkBheA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-pipe": "8.17.2",
-        "@cspell/cspell-types": "8.17.2",
-        "cspell-trie-lib": "8.17.2",
+        "@cspell/cspell-pipe": "8.17.3",
+        "@cspell/cspell-types": "8.17.3",
+        "cspell-trie-lib": "8.17.3",
         "fast-equals": "^5.2.2"
       },
       "engines": {
@@ -774,15 +774,15 @@
       }
     },
     "node_modules/cspell-gitignore": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.17.2.tgz",
-      "integrity": "sha512-zCTTN30zV96LkZmUDrLamEHpLLUGohKglKJ4iXoHQC8pDU3xTsV2qzeCQjM9SEmU3VbE1TzWq+vj0fslasv6pA==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-gitignore/-/cspell-gitignore-8.17.3.tgz",
+      "integrity": "sha512-rQamjb8R+Nwib/Bpcgf+xv5IdsOHgbP+fe4hCgv0jjgUPkeOR2c4dGwc0WS+2UkJbc+wQohpzBGDLRYGSB/hQw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/url": "8.17.2",
-        "cspell-glob": "8.17.2",
-        "cspell-io": "8.17.2",
+        "@cspell/url": "8.17.3",
+        "cspell-glob": "8.17.3",
+        "cspell-io": "8.17.3",
         "find-up-simple": "^1.0.0"
       },
       "bin": {
@@ -793,13 +793,13 @@
       }
     },
     "node_modules/cspell-glob": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.17.2.tgz",
-      "integrity": "sha512-MTgrWX12oY8Pq/M3PEYCTHwD6w6l+DPtBWm958nhR4dboUbwi/3KfqCtdorkhnuClqLDQuuZHp0uGBXB4cdQrw==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-glob/-/cspell-glob-8.17.3.tgz",
+      "integrity": "sha512-0ov9A0E6OuOO7KOxlGCxJ09LR/ubZ6xcGwWc5bu+jp/8onUowQfe+9vZdznj/o8/vcf5JkDzyhRSBsdhWKqoAg==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/url": "8.17.2",
+        "@cspell/url": "8.17.3",
         "micromatch": "^4.0.8"
       },
       "engines": {
@@ -807,14 +807,14 @@
       }
     },
     "node_modules/cspell-grammar": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.17.2.tgz",
-      "integrity": "sha512-Asg5XRvrg2yHCvBwzARBPSwI4P5/unN+bKBlxqFazHgR72WJE+ASeobfUNfGi/RxJA2+m0hO91oYtvq6LfK52w==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-grammar/-/cspell-grammar-8.17.3.tgz",
+      "integrity": "sha512-wfjkkvHthnKJtEaTgx3cPUPquGRXfgXSCwvMJaDyUi36KBlopXX38PejBTdmuqrvp7bINLSuHErml9wAfL5Fxw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-pipe": "8.17.2",
-        "@cspell/cspell-types": "8.17.2"
+        "@cspell/cspell-pipe": "8.17.3",
+        "@cspell/cspell-types": "8.17.3"
       },
       "bin": {
         "cspell-grammar": "bin.mjs"
@@ -824,42 +824,42 @@
       }
     },
     "node_modules/cspell-io": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.17.2.tgz",
-      "integrity": "sha512-IUdhbO6gsWYiM2dgudFJQTfnFCDYjLOqal3SxH5o8oOWeu5iIZ+s3N8E1odz0L5zF2Go7zDQSKvPr7Y9OOoRfw==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-io/-/cspell-io-8.17.3.tgz",
+      "integrity": "sha512-NwEVb3Kr8loV1C8Stz9QSMgUrBkxqf2s7A9H2/RBnfvQBt9CWZS6NgoNxTPwHj3h1sUNl9reDkMQQzkKtgWGBQ==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-service-bus": "8.17.2",
-        "@cspell/url": "8.17.2"
+        "@cspell/cspell-service-bus": "8.17.3",
+        "@cspell/url": "8.17.3"
       },
       "engines": {
         "node": ">=18"
       }
     },
     "node_modules/cspell-lib": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.17.2.tgz",
-      "integrity": "sha512-ZgkTvGh9FO+R3v5TaTqlrJEylWyZhNOzbtrQ5W35Hb3tZ9IJJklxjlcGe+gbFsjGi56kLj6c5L2NR7YX/Fdu5Q==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-lib/-/cspell-lib-8.17.3.tgz",
+      "integrity": "sha512-KpwYIj8HwFyTzCCQcyezlmomvyNfPwZQmqTh4V126sFvf9HLoMdfyq8KYDZmZ//4HzwrF/ufJOF3CpuVUiJHfA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-bundled-dicts": "8.17.2",
-        "@cspell/cspell-pipe": "8.17.2",
-        "@cspell/cspell-resolver": "8.17.2",
-        "@cspell/cspell-types": "8.17.2",
-        "@cspell/dynamic-import": "8.17.2",
-        "@cspell/filetypes": "8.17.2",
-        "@cspell/strong-weak-map": "8.17.2",
-        "@cspell/url": "8.17.2",
+        "@cspell/cspell-bundled-dicts": "8.17.3",
+        "@cspell/cspell-pipe": "8.17.3",
+        "@cspell/cspell-resolver": "8.17.3",
+        "@cspell/cspell-types": "8.17.3",
+        "@cspell/dynamic-import": "8.17.3",
+        "@cspell/filetypes": "8.17.3",
+        "@cspell/strong-weak-map": "8.17.3",
+        "@cspell/url": "8.17.3",
         "clear-module": "^4.1.2",
         "comment-json": "^4.2.5",
-        "cspell-config-lib": "8.17.2",
-        "cspell-dictionary": "8.17.2",
-        "cspell-glob": "8.17.2",
-        "cspell-grammar": "8.17.2",
-        "cspell-io": "8.17.2",
-        "cspell-trie-lib": "8.17.2",
+        "cspell-config-lib": "8.17.3",
+        "cspell-dictionary": "8.17.3",
+        "cspell-glob": "8.17.3",
+        "cspell-grammar": "8.17.3",
+        "cspell-io": "8.17.3",
+        "cspell-trie-lib": "8.17.3",
         "env-paths": "^3.0.0",
         "fast-equals": "^5.2.2",
         "gensequence": "^7.0.0",
@@ -874,14 +874,14 @@
       }
     },
     "node_modules/cspell-trie-lib": {
-      "version": "8.17.2",
-      "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.17.2.tgz",
-      "integrity": "sha512-Bw9q8EWFihkQGo8fNdfkUqYOTsC161+wrQxR7m74K4bKEmQgm0mS0sLHKUwxEOZVGGLmIw9dMQl+8WnTgqOaMQ==",
+      "version": "8.17.3",
+      "resolved": "https://registry.npmjs.org/cspell-trie-lib/-/cspell-trie-lib-8.17.3.tgz",
+      "integrity": "sha512-6LE5BeT2Rwv0bkQckpxX0K1fnFCWfeJ8zVPFtYOaix0trtqj0VNuwWzYDnxyW+OwMioCH29yRAMODa+JDFfUrA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@cspell/cspell-pipe": "8.17.2",
-        "@cspell/cspell-types": "8.17.2",
+        "@cspell/cspell-pipe": "8.17.3",
+        "@cspell/cspell-types": "8.17.3",
         "gensequence": "^7.0.0"
       },
       "engines": {