Repository: mapping-commons/sssom-py

Issue:
Fix all the other `^` dependencies to '>='. 
              Why not fix all the other `^` dependencies to '>='. As a core library that
is reused in multiple other projects, sssom-py simply has to be less
opinionated about versions.

Do we even need scipy as a core dependency?

I think I am responsible for introducing this:
https://github.com/mapping-commons/sssom-py/blame/master/src/sssom/cli.py#L488C32-L488C32

Back when sssom-py was a bit more experimental. But if people are really
using this non-core function perhaps this could be an extra.

We really need to be making our core python libraries more lightweight.
Note every design decision from 3+ years ago is set in stone. We can start
moving out non-core functionality into separate packages, plugins, or make
the dependency an extra.

On Fri, Jul 14, 2023 at 1:51 PM Harshad ***@***.***> wrote:

> I switched sssom-py to using any version of python >= 3.8 but < 4.0.0
> (for now). Due to this, poetry complained abut spicy having conflicting
> python version compatibility.
>
> Solution poetry add scipy="*": What this does is finds a compatible
> version of scipy and installs it. This will fix some headache in the
> future.
> ------------------------------
> You can view, comment on, or merge this pull request online at:
>
>   https://github.com/mapping-commons/sssom-py/pull/391
> Commit Summary
>
>    - 25a0470
>    <https://github.com/mapping-commons/sssom-py/pull/391/commits/25a0470b0069322fc568c1f737d2f716544ad22f>
>    scipy latest version creating incompatibility errors.
>
> File Changes
>
> (2 files <https://github.com/mapping-commons/sssom-py/pull/391/files>)
>
>    - *M* poetry.lock
>    <https://github.com/mapping-commons/sssom-py/pull/391/files#diff-f53a023eedfa3fbf2925ec7dc76eecdc954ea94b7e47065393dbad519613dc89>
>    (790)
>    - *M* pyproject.toml
>    <https://github.com/mapping-commons/sssom-py/pull/391/files#diff-50c86b7ed8ac2cf95bd48334961bf0530cdc77b5a56f852c5c61b89d735fd711>
>    (4)
>
> Patch Links:
>
>    - https://github.com/mapping-commons/sssom-py/pull/391.patch
>    - https://github.com/mapping-commons/sssom-py/pull/391.diff
>
> —
> Reply to this email directly, view it on GitHub
> <https://github.com/mapping-commons/sssom-py/pull/391>, or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AAAMMOMLPHMXCPF4RBKBRTTXQGWLXANCNFSM6AAAAAA2KZDQS4>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>

_Originally posted by @cmungall in https://github.com/mapping-commons/sssom-py/issues/391#issuecomment-1638284869_
            

Discussion:

Patch:
diff --git a/Makefile b/Makefile
index c07d292..933a415 100644
--- a/Makefile
+++ b/Makefile
@@ -20,7 +20,7 @@ schema/cliquesummary.py: schema/cliquesummary.yaml
 	gen-py-classes $< > $@
 schema/%.schema.json: .FORCE
 	wget $(SSSOM_JSON_SCHEMA) -O $@
-schema/sssom.external.context.jsonld:
+src/sssom/sssom.external.context.jsonld:
 	wget $(DEFAULT_PREFIX_MAP) -O $@
 schema/%.context.jsonld: .FORCE
 	wget $(SSSOM_JSONLD_CONTEXT) -O $@
@@ -33,28 +33,8 @@ test:
 	tox
 	sh tests/tests.sh
 
-src/sssom/external_context.py: schema/sssom.external.context.jsonld
-	echo "\"\"\"This module contains an autogenerated copy of the external SSSOM context.\"\"\"" > $@
-	echo "" >> $@
-	echo "# This is autogenerated and super hacky." >> $@
-	echo "sssom_external_context = \"\"\""  >> $@
-	cat $< >> $@
-	echo "\"\"\""  >> $@
-	black $@
-
-src/sssom/internal_context.py: schema/sssom.context.jsonld
-	echo "\"\"\"This module contains an autogenerated copy of the internal SSSOM context.\"\"\"" > $@
-	echo "" >> $@
-	echo "sssom_context = \"\"\""  >> $@
-	cat $< >> $@
-	echo "\"\"\""  >> $@
-
-deploy-dm: src/sssom/external_context.py src/sssom/internal_context.py
-	cp schema/sssom_datamodel.py src/sssom/
-	cp schema/sssom.context.jsonld src/sssom/
-	cp schema/sssom.external.context.jsonld src/sssom/
+deploy-dm: src/sssom/sssom.external.context.jsonld
 	
-
 install:
 	pip install .[test,docs]
 
diff --git a/poetry.lock b/poetry.lock
index 05bdad8..bf8fcb7 100644
--- a/poetry.lock
+++ b/poetry.lock
@@ -63,13 +63,13 @@ lxml = ["lxml"]
 
 [[package]]
 name = "bioregistry"
-version = "0.9.75"
+version = "0.9.78"
 description = "Integrated registry of biological databases and nomenclatures"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "bioregistry-0.9.75-py3-none-any.whl", hash = "sha256:cf74e21c9c11dc19fa65b59da70d60bdcea259dc37a785f834eaa4f3c4eb4b1f"},
-    {file = "bioregistry-0.9.75.tar.gz", hash = "sha256:46ac79e9683d36c66f3114692d903c3e24a1105f4a18b764faf6af2f2ed71d88"},
+    {file = "bioregistry-0.9.78-py3-none-any.whl", hash = "sha256:2be1c3e601acaf89b155c41aea441a563eca368ffb73a90b5c4d5f910e8d6751"},
+    {file = "bioregistry-0.9.78.tar.gz", hash = "sha256:0b0e297c3a41a472c5e0af45f9ff01547bc22db6dbd7ddafa000f493cf7c4ee0"},
 ]
 
 [package.dependencies]
@@ -302,13 +302,13 @@ packaging = "*"
 
 [[package]]
 name = "distlib"
-version = "0.3.6"
+version = "0.3.7"
 description = "Distribution utilities"
 optional = false
 python-versions = "*"
 files = [
-    {file = "distlib-0.3.6-py2.py3-none-any.whl", hash = "sha256:f35c4b692542ca110de7ef0bea44d73981caeb34ca0b9b6b2e6d7790dda8f80e"},
-    {file = "distlib-0.3.6.tar.gz", hash = "sha256:14bad2d9b04d3a36127ac97f30b12a19268f211063d8f8ee4f47108896e11b46"},
+    {file = "distlib-0.3.7-py2.py3-none-any.whl", hash = "sha256:2e24928bc811348f0feb63014e97aaae3037f2cf48712d51ae61df7fd6075057"},
+    {file = "distlib-0.3.7.tar.gz", hash = "sha256:9dafe54b34a028eafd95039d5e5d4851a13734540f1331060d31c9916e7147a8"},
 ]
 
 [[package]]
@@ -609,13 +609,13 @@ hbreader = "*"
 
 [[package]]
 name = "jsonschema"
-version = "4.18.3"
+version = "4.18.4"
 description = "An implementation of JSON Schema validation for Python"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "jsonschema-4.18.3-py3-none-any.whl", hash = "sha256:aab78b34c2de001c6b692232f08c21a97b436fe18e0b817bf0511046924fceef"},
-    {file = "jsonschema-4.18.3.tar.gz", hash = "sha256:64b7104d72efe856bea49ca4af37a14a9eba31b40bb7238179f3803130fd34d9"},
+    {file = "jsonschema-4.18.4-py3-none-any.whl", hash = "sha256:971be834317c22daaa9132340a51c01b50910724082c2c1a2ac87eeec153a3fe"},
+    {file = "jsonschema-4.18.4.tar.gz", hash = "sha256:fb3642735399fa958c0d2aad7057901554596c63349f4f6b283c493cf692a25d"},
 ]
 
 [package.dependencies]
@@ -632,13 +632,13 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339-
 
 [[package]]
 name = "jsonschema-specifications"
-version = "2023.6.1"
+version = "2023.7.1"
 description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "jsonschema_specifications-2023.6.1-py3-none-any.whl", hash = "sha256:3d2b82663aff01815f744bb5c7887e2121a63399b49b104a3c96145474d091d7"},
-    {file = "jsonschema_specifications-2023.6.1.tar.gz", hash = "sha256:ca1c4dd059a9e7b34101cf5b3ab7ff1d18b139f35950d598d629837ef66e8f28"},
+    {file = "jsonschema_specifications-2023.7.1-py3-none-any.whl", hash = "sha256:05adf340b659828a004220a9613be00fa3f223f2b82002e273dee62fd50524b1"},
+    {file = "jsonschema_specifications-2023.7.1.tar.gz", hash = "sha256:c91a50404e88a1f6ba40636778e2ee08f6e24c5613fe4c53ac24578a5a7f72bb"},
 ]
 
 [package.dependencies]
@@ -647,13 +647,13 @@ referencing = ">=0.28.0"
 
 [[package]]
 name = "linkml-runtime"
-version = "1.5.4"
+version = "1.5.5"
 description = "Runtime environment for LinkML, the Linked open data modeling language"
 optional = false
 python-versions = ">=3.7.6,<4.0.0"
 files = [
-    {file = "linkml_runtime-1.5.4-py3-none-any.whl", hash = "sha256:6fa07516474f3ccecb604b09c25382b87b5058ca09ff5e68084fb09095db191f"},
-    {file = "linkml_runtime-1.5.4.tar.gz", hash = "sha256:b9a6fc6c2af609b91238bad41d15186e4c3166f85ce79fe7e7b62d5493efebbf"},
+    {file = "linkml_runtime-1.5.5-py3-none-any.whl", hash = "sha256:92b0148a107f980a75b5608ece692f7d33f77328c6f61640a4d2e51488be4a3c"},
+    {file = "linkml_runtime-1.5.5.tar.gz", hash = "sha256:f0275823c659924c032e88d4084e6fdb9699c0a62c6c62d45cb62e27101cbbff"},
 ]
 
 [package.dependencies]
@@ -842,13 +842,13 @@ min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-imp
 
 [[package]]
 name = "mkdocs-material"
-version = "9.1.18"
+version = "9.1.19"
 description = "Documentation that simply works"
 optional = false
 python-versions = ">=3.7"
 files = [
-    {file = "mkdocs_material-9.1.18-py3-none-any.whl", hash = "sha256:5bcf8fb79ac2f253c0ffe93fa181cba87718c6438f459dc4180ac7418cc9a450"},
-    {file = "mkdocs_material-9.1.18.tar.gz", hash = "sha256:981dd39979723d4cda7cfc77bbbe5e54922d5761a7af23fb8ba9edb52f114b13"},
+    {file = "mkdocs_material-9.1.19-py3-none-any.whl", hash = "sha256:fb0a149294b319aedf36983919d8c40c9e566db21ead16258e20ebd2e6c0961c"},
+    {file = "mkdocs_material-9.1.19.tar.gz", hash = "sha256:73b94b08c765e92a80645aac58d6a741fc5f587deec2b715489c714827b15a6f"},
 ]
 
 [package.dependencies]
@@ -1099,13 +1099,13 @@ files = [
 
 [[package]]
 name = "platformdirs"
-version = "3.8.1"
+version = "3.9.1"
 description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"."
 optional = false
 python-versions = ">=3.7"
 files = [
-    {file = "platformdirs-3.8.1-py3-none-any.whl", hash = "sha256:cec7b889196b9144d088e4c57d9ceef7374f6c39694ad1577a0aab50d27ea28c"},
-    {file = "platformdirs-3.8.1.tar.gz", hash = "sha256:f87ca4fcff7d2b0f81c6a748a77973d7af0f4d526f98f308477c3c436c74d528"},
+    {file = "platformdirs-3.9.1-py3-none-any.whl", hash = "sha256:ad8291ae0ae5072f66c16945166cb11c63394c7a3ad1b1bc9828ca3162da8c2f"},
+    {file = "platformdirs-3.9.1.tar.gz", hash = "sha256:1b42b450ad933e981d56e59f1b97495428c9bd60698baab9f3eb3d00d5822421"},
 ]
 
 [package.extras]
@@ -1379,51 +1379,51 @@ files = [
 
 [[package]]
 name = "pyyaml"
-version = "6.0"
+version = "6.0.1"
 description = "YAML parser and emitter for Python"
 optional = false
 python-versions = ">=3.6"
 files = [
-    {file = "PyYAML-6.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d4db7c7aef085872ef65a8fd7d6d09a14ae91f691dec3e87ee5ee0539d516f53"},
-    {file = "PyYAML-6.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9df7ed3b3d2e0ecfe09e14741b857df43adb5a3ddadc919a2d94fbdf78fea53c"},
-    {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:77f396e6ef4c73fdc33a9157446466f1cff553d979bd00ecb64385760c6babdc"},
-    {file = "PyYAML-6.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a80a78046a72361de73f8f395f1f1e49f956c6be882eed58505a15f3e430962b"},
-    {file = "PyYAML-6.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:f84fbc98b019fef2ee9a1cb3ce93e3187a6df0b2538a651bfb890254ba9f90b5"},
-    {file = "PyYAML-6.0-cp310-cp310-win32.whl", hash = "sha256:2cd5df3de48857ed0544b34e2d40e9fac445930039f3cfe4bcc592a1f836d513"},
-    {file = "PyYAML-6.0-cp310-cp310-win_amd64.whl", hash = "sha256:daf496c58a8c52083df09b80c860005194014c3698698d1a57cbcfa182142a3a"},
-    {file = "PyYAML-6.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d4b0ba9512519522b118090257be113b9468d804b19d63c71dbcf4a48fa32358"},
-    {file = "PyYAML-6.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:81957921f441d50af23654aa6c5e5eaf9b06aba7f0a19c18a538dc7ef291c5a1"},
-    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:afa17f5bc4d1b10afd4466fd3a44dc0e245382deca5b3c353d8b757f9e3ecb8d"},
-    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:dbad0e9d368bb989f4515da330b88a057617d16b6a8245084f1b05400f24609f"},
-    {file = "PyYAML-6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:432557aa2c09802be39460360ddffd48156e30721f5e8d917f01d31694216782"},
-    {file = "PyYAML-6.0-cp311-cp311-win32.whl", hash = "sha256:bfaef573a63ba8923503d27530362590ff4f576c626d86a9fed95822a8255fd7"},
-    {file = "PyYAML-6.0-cp311-cp311-win_amd64.whl", hash = "sha256:01b45c0191e6d66c470b6cf1b9531a771a83c1c4208272ead47a3ae4f2f603bf"},
-    {file = "PyYAML-6.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:897b80890765f037df3403d22bab41627ca8811ae55e9a722fd0392850ec4d86"},
-    {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:50602afada6d6cbfad699b0c7bb50d5ccffa7e46a3d738092afddc1f9758427f"},
-    {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:48c346915c114f5fdb3ead70312bd042a953a8ce5c7106d5bfb1a5254e47da92"},
-    {file = "PyYAML-6.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:98c4d36e99714e55cfbaaee6dd5badbc9a1ec339ebfc3b1f52e293aee6bb71a4"},
-    {file = "PyYAML-6.0-cp36-cp36m-win32.whl", hash = "sha256:0283c35a6a9fbf047493e3a0ce8d79ef5030852c51e9d911a27badfde0605293"},
-    {file = "PyYAML-6.0-cp36-cp36m-win_amd64.whl", hash = "sha256:07751360502caac1c067a8132d150cf3d61339af5691fe9e87803040dbc5db57"},
-    {file = "PyYAML-6.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:819b3830a1543db06c4d4b865e70ded25be52a2e0631ccd2f6a47a2822f2fd7c"},
-    {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:473f9edb243cb1935ab5a084eb238d842fb8f404ed2193a915d1784b5a6b5fc0"},
-    {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0ce82d761c532fe4ec3f87fc45688bdd3a4c1dc5e0b4a19814b9009a29baefd4"},
-    {file = "PyYAML-6.0-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:231710d57adfd809ef5d34183b8ed1eeae3f76459c18fb4a0b373ad56bedcdd9"},
-    {file = "PyYAML-6.0-cp37-cp37m-win32.whl", hash = "sha256:c5687b8d43cf58545ade1fe3e055f70eac7a5a1a0bf42824308d868289a95737"},
-    {file = "PyYAML-6.0-cp37-cp37m-win_amd64.whl", hash = "sha256:d15a181d1ecd0d4270dc32edb46f7cb7733c7c508857278d3d378d14d606db2d"},
-    {file = "PyYAML-6.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0b4624f379dab24d3725ffde76559cff63d9ec94e1736b556dacdfebe5ab6d4b"},
-    {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:213c60cd50106436cc818accf5baa1aba61c0189ff610f64f4a3e8c6726218ba"},
-    {file = "PyYAML-6.0-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fa600030013c4de8165339db93d182b9431076eb98eb40ee068700c9c813e34"},
-    {file = "PyYAML-6.0-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:277a0ef2981ca40581a47093e9e2d13b3f1fbbeffae064c1d21bfceba2030287"},
-    {file = "PyYAML-6.0-cp38-cp38-win32.whl", hash = "sha256:d4eccecf9adf6fbcc6861a38015c2a64f38b9d94838ac1810a9023a0609e1b78"},
-    {file = "PyYAML-6.0-cp38-cp38-win_amd64.whl", hash = "sha256:1e4747bc279b4f613a09eb64bba2ba602d8a6664c6ce6396a4d0cd413a50ce07"},
-    {file = "PyYAML-6.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:055d937d65826939cb044fc8c9b08889e8c743fdc6a32b33e2390f66013e449b"},
-    {file = "PyYAML-6.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:e61ceaab6f49fb8bdfaa0f92c4b57bcfbea54c09277b1b4f7ac376bfb7a7c174"},
-    {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d67d839ede4ed1b28a4e8909735fc992a923cdb84e618544973d7dfc71540803"},
-    {file = "PyYAML-6.0-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:cba8c411ef271aa037d7357a2bc8f9ee8b58b9965831d9e51baf703280dc73d3"},
-    {file = "PyYAML-6.0-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:40527857252b61eacd1d9af500c3337ba8deb8fc298940291486c465c8b46ec0"},
-    {file = "PyYAML-6.0-cp39-cp39-win32.whl", hash = "sha256:b5b9eccad747aabaaffbc6064800670f0c297e52c12754eb1d976c57e4f74dcb"},
-    {file = "PyYAML-6.0-cp39-cp39-win_amd64.whl", hash = "sha256:b3d267842bf12586ba6c734f89d1f5b871df0273157918b0ccefa29deb05c21c"},
-    {file = "PyYAML-6.0.tar.gz", hash = "sha256:68fb519c14306fec9720a2a5b45bc9f0c8d1b9c72adf45c37baedfcd949c35a2"},
+    {file = "PyYAML-6.0.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d858aa552c999bc8a8d57426ed01e40bef403cd8ccdd0fc5f6f04a00414cac2a"},
+    {file = "PyYAML-6.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:fd66fc5d0da6d9815ba2cebeb4205f95818ff4b79c3ebe268e75d961704af52f"},
+    {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"},
+    {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"},
+    {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"},
+    {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"},
+    {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"},
+    {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"},
+    {file = "PyYAML-6.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f003ed9ad21d6a4713f0a9b5a7a0a79e08dd0f221aff4525a2be4c346ee60aab"},
+    {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"},
+    {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"},
+    {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"},
+    {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"},
+    {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-win32.whl", hash = "sha256:fca0e3a251908a499833aa292323f32437106001d436eca0e6e7833256674585"},
+    {file = "PyYAML-6.0.1-cp36-cp36m-win_amd64.whl", hash = "sha256:f22ac1c3cac4dbc50079e965eba2c1058622631e526bd9afd45fedd49ba781fa"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:18aeb1bf9a78867dc38b259769503436b7c72f7a1f1f4c93ff9a17de54319b27"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:596106435fa6ad000c2991a98fa58eeb8656ef2325d7e158344fb33864ed87e3"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:baa90d3f661d43131ca170712d903e6295d1f7a0f595074f151c0aed377c9b9c"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-win32.whl", hash = "sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba"},
+    {file = "PyYAML-6.0.1-cp37-cp37m-win_amd64.whl", hash = "sha256:4fb147e7a67ef577a588a0e2c17b6db51dda102c71de36f8549b6816a96e1867"},
+    {file = "PyYAML-6.0.1-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:1d4c7e777c441b20e32f52bd377e0c409713e8bb1386e1099c2415f26e479595"},
+    {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"},
+    {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"},
+    {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"},
+    {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"},
+    {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"},
+    {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"},
+    {file = "PyYAML-6.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c8098ddcc2a85b61647b2590f825f3db38891662cfc2fc776415143f599bb859"},
+    {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"},
+    {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"},
+    {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"},
+    {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"},
+    {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"},
+    {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"},
 ]
 
 [[package]]
@@ -1463,13 +1463,13 @@ networkx = ["networkx (>=2.0.0,<3.0.0)"]
 
 [[package]]
 name = "referencing"
-version = "0.29.1"
+version = "0.30.0"
 description = "JSON Referencing + Python"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "referencing-0.29.1-py3-none-any.whl", hash = "sha256:d3c8f323ee1480095da44d55917cfb8278d73d6b4d5f677e3e40eb21314ac67f"},
-    {file = "referencing-0.29.1.tar.gz", hash = "sha256:90cb53782d550ba28d2166ef3f55731f38397def8832baac5d45235f1995e35e"},
+    {file = "referencing-0.30.0-py3-none-any.whl", hash = "sha256:c257b08a399b6c2f5a3510a50d28ab5dbc7bbde049bcaf954d43c446f83ab548"},
+    {file = "referencing-0.30.0.tar.gz", hash = "sha256:47237742e990457f7512c7d27486394a9aadaf876cbfaa4be65b27b4f4d47c6b"},
 ]
 
 [package.dependencies]
@@ -1596,108 +1596,108 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"]
 
 [[package]]
 name = "rpds-py"
-version = "0.8.10"
+version = "0.9.2"
 description = "Python bindings to Rust's persistent data structures (rpds)"
 optional = false
 python-versions = ">=3.8"
 files = [
-    {file = "rpds_py-0.8.10-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:93d06cccae15b3836247319eee7b6f1fdcd6c10dabb4e6d350d27bd0bdca2711"},
-    {file = "rpds_py-0.8.10-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:3816a890a6a9e9f1de250afa12ca71c9a7a62f2b715a29af6aaee3aea112c181"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a7c6304b894546b5a6bdc0fe15761fa53fe87d28527a7142dae8de3c663853e1"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ad3bfb44c8840fb4be719dc58e229f435e227fbfbe133dc33f34981ff622a8f8"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:14f1c356712f66653b777ecd8819804781b23dbbac4eade4366b94944c9e78ad"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:82bb361cae4d0a627006dadd69dc2f36b7ad5dc1367af9d02e296ec565248b5b"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b2e3c4f2a8e3da47f850d7ea0d7d56720f0f091d66add889056098c4b2fd576c"},
-    {file = "rpds_py-0.8.10-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:15a90d0ac11b4499171067ae40a220d1ca3cb685ec0acc356d8f3800e07e4cb8"},
-    {file = "rpds_py-0.8.10-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:70bb9c8004b97b4ef7ae56a2aa56dfaa74734a0987c78e7e85f00004ab9bf2d0"},
-    {file = "rpds_py-0.8.10-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:d64f9f88d5203274a002b54442cafc9c7a1abff2a238f3e767b70aadf919b451"},
-    {file = "rpds_py-0.8.10-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:ccbbd276642788c4376fbe8d4e6c50f0fb4972ce09ecb051509062915891cbf0"},
-    {file = "rpds_py-0.8.10-cp310-none-win32.whl", hash = "sha256:fafc0049add8043ad07ab5382ee80d80ed7e3699847f26c9a5cf4d3714d96a84"},
-    {file = "rpds_py-0.8.10-cp310-none-win_amd64.whl", hash = "sha256:915031002c86a5add7c6fd4beb601b2415e8a1c956590a5f91d825858e92fe6e"},
-    {file = "rpds_py-0.8.10-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:84eb541a44f7a18f07a6bfc48b95240739e93defe1fdfb4f2a295f37837945d7"},
-    {file = "rpds_py-0.8.10-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f59996d0550894affaad8743e97b9b9c98f638b221fac12909210ec3d9294786"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f9adb5664b78fcfcd830000416c8cc69853ef43cb084d645b3f1f0296edd9bae"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f96f3f98fbff7af29e9edf9a6584f3c1382e7788783d07ba3721790625caa43e"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:376b8de737401050bd12810003d207e824380be58810c031f10ec563ff6aef3d"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5d1c2bc319428d50b3e0fa6b673ab8cc7fa2755a92898db3a594cbc4eeb6d1f7"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:73a1e48430f418f0ac3dfd87860e4cc0d33ad6c0f589099a298cb53724db1169"},
-    {file = "rpds_py-0.8.10-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:134ec8f14ca7dbc6d9ae34dac632cdd60939fe3734b5d287a69683c037c51acb"},
-    {file = "rpds_py-0.8.10-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:4b519bac7c09444dd85280fd60f28c6dde4389c88dddf4279ba9b630aca3bbbe"},
-    {file = "rpds_py-0.8.10-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:9cd57981d9fab04fc74438d82460f057a2419974d69a96b06a440822d693b3c0"},
-    {file = "rpds_py-0.8.10-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:69d089c026f6a8b9d64a06ff67dc3be196707b699d7f6ca930c25f00cf5e30d8"},
-    {file = "rpds_py-0.8.10-cp311-none-win32.whl", hash = "sha256:220bdcad2d2936f674650d304e20ac480a3ce88a40fe56cd084b5780f1d104d9"},
-    {file = "rpds_py-0.8.10-cp311-none-win_amd64.whl", hash = "sha256:6c6a0225b8501d881b32ebf3f5807a08ad3685b5eb5f0a6bfffd3a6e039b2055"},
-    {file = "rpds_py-0.8.10-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:e3d0cd3dff0e7638a7b5390f3a53057c4e347f4ef122ee84ed93fc2fb7ea4aa2"},
-    {file = "rpds_py-0.8.10-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d77dff3a5aa5eedcc3da0ebd10ff8e4969bc9541aa3333a8d41715b429e99f47"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:41c89a366eae49ad9e65ed443a8f94aee762931a1e3723749d72aeac80f5ef2f"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3793c21494bad1373da517001d0849eea322e9a049a0e4789e50d8d1329df8e7"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:805a5f3f05d186c5d50de2e26f765ba7896d0cc1ac5b14ffc36fae36df5d2f10"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b01b39ad5411563031ea3977bbbc7324d82b088e802339e6296f082f78f6115c"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3f1e860be21f3e83011116a65e7310486300e08d9a3028e73e8d13bb6c77292"},
-    {file = "rpds_py-0.8.10-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a13c8e56c46474cd5958d525ce6a9996727a83d9335684e41f5192c83deb6c58"},
-    {file = "rpds_py-0.8.10-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:93d99f957a300d7a4ced41615c45aeb0343bb8f067c42b770b505de67a132346"},
-    {file = "rpds_py-0.8.10-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:148b0b38d719c0760e31ce9285a9872972bdd7774969a4154f40c980e5beaca7"},
-    {file = "rpds_py-0.8.10-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:3cc5e5b5514796f45f03a568981971b12a3570f3de2e76114f7dc18d4b60a3c4"},
-    {file = "rpds_py-0.8.10-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:e8e24b210a4deb5a7744971f8f77393005bae7f873568e37dfd9effe808be7f7"},
-    {file = "rpds_py-0.8.10-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b41941583adce4242af003d2a8337b066ba6148ca435f295f31ac6d9e4ea2722"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3c490204e16bca4f835dba8467869fe7295cdeaa096e4c5a7af97f3454a97991"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1ee45cd1d84beed6cbebc839fd85c2e70a3a1325c8cfd16b62c96e2ffb565eca"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4a8ca409f1252e1220bf09c57290b76cae2f14723746215a1e0506472ebd7bdf"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:96b293c0498c70162effb13100624c5863797d99df75f2f647438bd10cbf73e4"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b4627520a02fccbd324b33c7a83e5d7906ec746e1083a9ac93c41ac7d15548c7"},
-    {file = "rpds_py-0.8.10-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e39d7ab0c18ac99955b36cd19f43926450baba21e3250f053e0704d6ffd76873"},
-    {file = "rpds_py-0.8.10-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:ba9f1d1ebe4b63801977cec7401f2d41e888128ae40b5441270d43140efcad52"},
-    {file = "rpds_py-0.8.10-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:802f42200d8caf7f25bbb2a6464cbd83e69d600151b7e3b49f49a47fa56b0a38"},
-    {file = "rpds_py-0.8.10-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:d19db6ba816e7f59fc806c690918da80a7d186f00247048cd833acdab9b4847b"},
-    {file = "rpds_py-0.8.10-cp38-none-win32.whl", hash = "sha256:7947e6e2c2ad68b1c12ee797d15e5f8d0db36331200b0346871492784083b0c6"},
-    {file = "rpds_py-0.8.10-cp38-none-win_amd64.whl", hash = "sha256:fa326b3505d5784436d9433b7980171ab2375535d93dd63fbcd20af2b5ca1bb6"},
-    {file = "rpds_py-0.8.10-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:7b38a9ac96eeb6613e7f312cd0014de64c3f07000e8bf0004ad6ec153bac46f8"},
-    {file = "rpds_py-0.8.10-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c4d42e83ddbf3445e6514f0aff96dca511421ed0392d9977d3990d9f1ba6753c"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1b21575031478609db6dbd1f0465e739fe0e7f424a8e7e87610a6c7f68b4eb16"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:574868858a7ff6011192c023a5289158ed20e3f3b94b54f97210a773f2f22921"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae40f4a70a1f40939d66ecbaf8e7edc144fded190c4a45898a8cfe19d8fc85ea"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:37f7ee4dc86db7af3bac6d2a2cedbecb8e57ce4ed081f6464510e537589f8b1e"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:695f642a3a5dbd4ad2ffbbacf784716ecd87f1b7a460843b9ddf965ccaeafff4"},
-    {file = "rpds_py-0.8.10-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f43ab4cb04bde6109eb2555528a64dfd8a265cc6a9920a67dcbde13ef53a46c8"},
-    {file = "rpds_py-0.8.10-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:a11ab0d97be374efd04f640c04fe5c2d3dabc6dfb998954ea946ee3aec97056d"},
-    {file = "rpds_py-0.8.10-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:92cf5b3ee60eef41f41e1a2cabca466846fb22f37fc580ffbcb934d1bcab225a"},
-    {file = "rpds_py-0.8.10-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:ceaac0c603bf5ac2f505a78b2dcab78d3e6b706be6596c8364b64cc613d208d2"},
-    {file = "rpds_py-0.8.10-cp39-none-win32.whl", hash = "sha256:dd4f16e57c12c0ae17606c53d1b57d8d1c8792efe3f065a37cb3341340599d49"},
-    {file = "rpds_py-0.8.10-cp39-none-win_amd64.whl", hash = "sha256:c03a435d26c3999c2a8642cecad5d1c4d10c961817536af52035f6f4ee2f5dd0"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:0da53292edafecba5e1d8c1218f99babf2ed0bf1c791d83c0ab5c29b57223068"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:7d20a8ed227683401cc508e7be58cba90cc97f784ea8b039c8cd01111e6043e0"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:97cab733d303252f7c2f7052bf021a3469d764fc2b65e6dbef5af3cbf89d4892"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8c398fda6df361a30935ab4c4bccb7f7a3daef2964ca237f607c90e9f3fdf66f"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2eb4b08c45f8f8d8254cdbfacd3fc5d6b415d64487fb30d7380b0d0569837bf1"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e7dfb1cbb895810fa2b892b68153c17716c6abaa22c7dc2b2f6dcf3364932a1c"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:89c92b74e8bf6f53a6f4995fd52f4bd510c12f103ee62c99e22bc9e05d45583c"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e9c0683cb35a9b5881b41bc01d5568ffc667910d9dbc632a1fba4e7d59e98773"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:0eeb2731708207d0fe2619afe6c4dc8cb9798f7de052da891de5f19c0006c315"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:7495010b658ec5b52835f21d8c8b1a7e52e194c50f095d4223c0b96c3da704b1"},
-    {file = "rpds_py-0.8.10-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:c72ebc22e70e04126158c46ba56b85372bc4d54d00d296be060b0db1671638a4"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:2cd3045e7f6375dda64ed7db1c5136826facb0159ea982f77d9cf6125025bd34"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:2418cf17d653d24ffb8b75e81f9f60b7ba1b009a23298a433a4720b2a0a17017"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1a2edf8173ac0c7a19da21bc68818be1321998528b5e3f748d6ee90c0ba2a1fd"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7f29b8c55fd3a2bc48e485e37c4e2df3317f43b5cc6c4b6631c33726f52ffbb3"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a7d20c1cf8d7b3960c5072c265ec47b3f72a0c608a9a6ee0103189b4f28d531"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:521fc8861a86ae54359edf53a15a05fabc10593cea7b3357574132f8427a5e5a"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d5c191713e98e7c28800233f039a32a42c1a4f9a001a8a0f2448b07391881036"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:083df0fafe199371206111583c686c985dddaf95ab3ee8e7b24f1fda54515d09"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:ed41f3f49507936a6fe7003985ea2574daccfef999775525d79eb67344e23767"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:2614c2732bf45de5c7f9e9e54e18bc78693fa2f635ae58d2895b7965e470378c"},
-    {file = "rpds_py-0.8.10-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:c60528671d9d467009a6ec284582179f6b88651e83367d0ab54cb739021cd7de"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:ee744fca8d1ea822480a2a4e7c5f2e1950745477143668f0b523769426060f29"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:a38b9f526d0d6cbdaa37808c400e3d9f9473ac4ff64d33d9163fd05d243dbd9b"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:60e0e86e870350e03b3e25f9b1dd2c6cc72d2b5f24e070249418320a6f9097b7"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f53f55a8852f0e49b0fc76f2412045d6ad9d5772251dea8f55ea45021616e7d5"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:c493365d3fad241d52f096e4995475a60a80f4eba4d3ff89b713bc65c2ca9615"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:300eb606e6b94a7a26f11c8cc8ee59e295c6649bd927f91e1dbd37a4c89430b6"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5a665f6f1a87614d1c3039baf44109094926dedf785e346d8b0a728e9cabd27a"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:927d784648211447201d4c6f1babddb7971abad922b32257ab74de2f2750fad0"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:c200b30dd573afa83847bed7e3041aa36a8145221bf0cfdfaa62d974d720805c"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:08166467258fd0240a1256fce272f689f2360227ee41c72aeea103e9e4f63d2b"},
-    {file = "rpds_py-0.8.10-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:996cc95830de9bc22b183661d95559ec6b3cd900ad7bc9154c4cbf5be0c9b734"},
-    {file = "rpds_py-0.8.10.tar.gz", hash = "sha256:13e643ce8ad502a0263397362fb887594b49cf84bf518d6038c16f235f2bcea4"},
+    {file = "rpds_py-0.9.2-cp310-cp310-macosx_10_7_x86_64.whl", hash = "sha256:ab6919a09c055c9b092798ce18c6c4adf49d24d4d9e43a92b257e3f2548231e7"},
+    {file = "rpds_py-0.9.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:d55777a80f78dd09410bd84ff8c95ee05519f41113b2df90a69622f5540c4f8b"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a216b26e5af0a8e265d4efd65d3bcec5fba6b26909014effe20cd302fd1138fa"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:29cd8bfb2d716366a035913ced99188a79b623a3512292963d84d3e06e63b496"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:44659b1f326214950a8204a248ca6199535e73a694be8d3e0e869f820767f12f"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:745f5a43fdd7d6d25a53ab1a99979e7f8ea419dfefebcab0a5a1e9095490ee5e"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a987578ac5214f18b99d1f2a3851cba5b09f4a689818a106c23dbad0dfeb760f"},
+    {file = "rpds_py-0.9.2-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:bf4151acb541b6e895354f6ff9ac06995ad9e4175cbc6d30aaed08856558201f"},
+    {file = "rpds_py-0.9.2-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:03421628f0dc10a4119d714a17f646e2837126a25ac7a256bdf7c3943400f67f"},
+    {file = "rpds_py-0.9.2-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:13b602dc3e8dff3063734f02dcf05111e887f301fdda74151a93dbbc249930fe"},
+    {file = "rpds_py-0.9.2-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:fae5cb554b604b3f9e2c608241b5d8d303e410d7dfb6d397c335f983495ce7f6"},
+    {file = "rpds_py-0.9.2-cp310-none-win32.whl", hash = "sha256:47c5f58a8e0c2c920cc7783113df2fc4ff12bf3a411d985012f145e9242a2764"},
+    {file = "rpds_py-0.9.2-cp310-none-win_amd64.whl", hash = "sha256:4ea6b73c22d8182dff91155af018b11aac9ff7eca085750455c5990cb1cfae6e"},
+    {file = "rpds_py-0.9.2-cp311-cp311-macosx_10_7_x86_64.whl", hash = "sha256:e564d2238512c5ef5e9d79338ab77f1cbbda6c2d541ad41b2af445fb200385e3"},
+    {file = "rpds_py-0.9.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:f411330a6376fb50e5b7a3e66894e4a39e60ca2e17dce258d53768fea06a37bd"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e7521f5af0233e89939ad626b15278c71b69dc1dfccaa7b97bd4cdf96536bb7"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8d3335c03100a073883857e91db9f2e0ef8a1cf42dc0369cbb9151c149dbbc1b"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d25b1c1096ef0447355f7293fbe9ad740f7c47ae032c2884113f8e87660d8f6e"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6a5d3fbd02efd9cf6a8ffc2f17b53a33542f6b154e88dd7b42ef4a4c0700fdad"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c5934e2833afeaf36bd1eadb57256239785f5af0220ed8d21c2896ec4d3a765f"},
+    {file = "rpds_py-0.9.2-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:095b460e117685867d45548fbd8598a8d9999227e9061ee7f012d9d264e6048d"},
+    {file = "rpds_py-0.9.2-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:91378d9f4151adc223d584489591dbb79f78814c0734a7c3bfa9c9e09978121c"},
+    {file = "rpds_py-0.9.2-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:24a81c177379300220e907e9b864107614b144f6c2a15ed5c3450e19cf536fae"},
+    {file = "rpds_py-0.9.2-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:de0b6eceb46141984671802d412568d22c6bacc9b230174f9e55fc72ef4f57de"},
+    {file = "rpds_py-0.9.2-cp311-none-win32.whl", hash = "sha256:700375326ed641f3d9d32060a91513ad668bcb7e2cffb18415c399acb25de2ab"},
+    {file = "rpds_py-0.9.2-cp311-none-win_amd64.whl", hash = "sha256:0766babfcf941db8607bdaf82569ec38107dbb03c7f0b72604a0b346b6eb3298"},
+    {file = "rpds_py-0.9.2-cp312-cp312-macosx_10_7_x86_64.whl", hash = "sha256:b1440c291db3f98a914e1afd9d6541e8fc60b4c3aab1a9008d03da4651e67386"},
+    {file = "rpds_py-0.9.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0f2996fbac8e0b77fd67102becb9229986396e051f33dbceada3debaacc7033f"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9f30d205755566a25f2ae0382944fcae2f350500ae4df4e795efa9e850821d82"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:159fba751a1e6b1c69244e23ba6c28f879a8758a3e992ed056d86d74a194a0f3"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a1f044792e1adcea82468a72310c66a7f08728d72a244730d14880cd1dabe36b"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9251eb8aa82e6cf88510530b29eef4fac825a2b709baf5b94a6094894f252387"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:01899794b654e616c8625b194ddd1e5b51ef5b60ed61baa7a2d9c2ad7b2a4238"},
+    {file = "rpds_py-0.9.2-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:b0c43f8ae8f6be1d605b0465671124aa8d6a0e40f1fb81dcea28b7e3d87ca1e1"},
+    {file = "rpds_py-0.9.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:207f57c402d1f8712618f737356e4b6f35253b6d20a324d9a47cb9f38ee43a6b"},
+    {file = "rpds_py-0.9.2-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:b52e7c5ae35b00566d244ffefba0f46bb6bec749a50412acf42b1c3f402e2c90"},
+    {file = "rpds_py-0.9.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:978fa96dbb005d599ec4fd9ed301b1cc45f1a8f7982d4793faf20b404b56677d"},
+    {file = "rpds_py-0.9.2-cp38-cp38-macosx_10_7_x86_64.whl", hash = "sha256:6aa8326a4a608e1c28da191edd7c924dff445251b94653988efb059b16577a4d"},
+    {file = "rpds_py-0.9.2-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:aad51239bee6bff6823bbbdc8ad85136c6125542bbc609e035ab98ca1e32a192"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4bd4dc3602370679c2dfb818d9c97b1137d4dd412230cfecd3c66a1bf388a196"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:dd9da77c6ec1f258387957b754f0df60766ac23ed698b61941ba9acccd3284d1"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:190ca6f55042ea4649ed19c9093a9be9d63cd8a97880106747d7147f88a49d18"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:876bf9ed62323bc7dcfc261dbc5572c996ef26fe6406b0ff985cbcf460fc8a4c"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fa2818759aba55df50592ecbc95ebcdc99917fa7b55cc6796235b04193eb3c55"},
+    {file = "rpds_py-0.9.2-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9ea4d00850ef1e917815e59b078ecb338f6a8efda23369677c54a5825dbebb55"},
+    {file = "rpds_py-0.9.2-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:5855c85eb8b8a968a74dc7fb014c9166a05e7e7a8377fb91d78512900aadd13d"},
+    {file = "rpds_py-0.9.2-cp38-cp38-musllinux_1_2_i686.whl", hash = "sha256:14c408e9d1a80dcb45c05a5149e5961aadb912fff42ca1dd9b68c0044904eb32"},
+    {file = "rpds_py-0.9.2-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:65a0583c43d9f22cb2130c7b110e695fff834fd5e832a776a107197e59a1898e"},
+    {file = "rpds_py-0.9.2-cp38-none-win32.whl", hash = "sha256:71f2f7715935a61fa3e4ae91d91b67e571aeb5cb5d10331ab681256bda2ad920"},
+    {file = "rpds_py-0.9.2-cp38-none-win_amd64.whl", hash = "sha256:674c704605092e3ebbbd13687b09c9f78c362a4bc710343efe37a91457123044"},
+    {file = "rpds_py-0.9.2-cp39-cp39-macosx_10_7_x86_64.whl", hash = "sha256:07e2c54bef6838fa44c48dfbc8234e8e2466d851124b551fc4e07a1cfeb37260"},
+    {file = "rpds_py-0.9.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:f7fdf55283ad38c33e35e2855565361f4bf0abd02470b8ab28d499c663bc5d7c"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:890ba852c16ace6ed9f90e8670f2c1c178d96510a21b06d2fa12d8783a905193"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:50025635ba8b629a86d9d5474e650da304cb46bbb4d18690532dd79341467846"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:517cbf6e67ae3623c5127206489d69eb2bdb27239a3c3cc559350ef52a3bbf0b"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:0836d71ca19071090d524739420a61580f3f894618d10b666cf3d9a1688355b1"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9c439fd54b2b9053717cca3de9583be6584b384d88d045f97d409f0ca867d80f"},
+    {file = "rpds_py-0.9.2-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:f68996a3b3dc9335037f82754f9cdbe3a95db42bde571d8c3be26cc6245f2324"},
+    {file = "rpds_py-0.9.2-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:7d68dc8acded354c972116f59b5eb2e5864432948e098c19fe6994926d8e15c3"},
+    {file = "rpds_py-0.9.2-cp39-cp39-musllinux_1_2_i686.whl", hash = "sha256:f963c6b1218b96db85fc37a9f0851eaf8b9040aa46dec112611697a7023da535"},
+    {file = "rpds_py-0.9.2-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5a46859d7f947061b4010e554ccd1791467d1b1759f2dc2ec9055fa239f1bc26"},
+    {file = "rpds_py-0.9.2-cp39-none-win32.whl", hash = "sha256:e07e5dbf8a83c66783a9fe2d4566968ea8c161199680e8ad38d53e075df5f0d0"},
+    {file = "rpds_py-0.9.2-cp39-none-win_amd64.whl", hash = "sha256:682726178138ea45a0766907957b60f3a1bf3acdf212436be9733f28b6c5af3c"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-macosx_10_7_x86_64.whl", hash = "sha256:196cb208825a8b9c8fc360dc0f87993b8b260038615230242bf18ec84447c08d"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-macosx_11_0_arm64.whl", hash = "sha256:c7671d45530fcb6d5e22fd40c97e1e1e01965fc298cbda523bb640f3d923b387"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:83b32f0940adec65099f3b1c215ef7f1d025d13ff947975a055989cb7fd019a4"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7f67da97f5b9eac838b6980fc6da268622e91f8960e083a34533ca710bec8611"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:03975db5f103997904c37e804e5f340c8fdabbb5883f26ee50a255d664eed58c"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:987b06d1cdb28f88a42e4fb8a87f094e43f3c435ed8e486533aea0bf2e53d931"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c861a7e4aef15ff91233751619ce3a3d2b9e5877e0fcd76f9ea4f6847183aa16"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:02938432352359805b6da099c9c95c8a0547fe4b274ce8f1a91677401bb9a45f"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:ef1f08f2a924837e112cba2953e15aacfccbbfcd773b4b9b4723f8f2ddded08e"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-musllinux_1_2_i686.whl", hash = "sha256:35da5cc5cb37c04c4ee03128ad59b8c3941a1e5cd398d78c37f716f32a9b7f67"},
+    {file = "rpds_py-0.9.2-pp310-pypy310_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:141acb9d4ccc04e704e5992d35472f78c35af047fa0cfae2923835d153f091be"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-macosx_10_7_x86_64.whl", hash = "sha256:79f594919d2c1a0cc17d1988a6adaf9a2f000d2e1048f71f298b056b1018e872"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-macosx_11_0_arm64.whl", hash = "sha256:a06418fe1155e72e16dddc68bb3780ae44cebb2912fbd8bb6ff9161de56e1798"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b2eb034c94b0b96d5eddb290b7b5198460e2d5d0c421751713953a9c4e47d10"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:8b08605d248b974eb02f40bdcd1a35d3924c83a2a5e8f5d0fa5af852c4d960af"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a0805911caedfe2736935250be5008b261f10a729a303f676d3d5fea6900c96a"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ab2299e3f92aa5417d5e16bb45bb4586171c1327568f638e8453c9f8d9e0f020"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8c8d7594e38cf98d8a7df25b440f684b510cf4627fe038c297a87496d10a174f"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:8b9ec12ad5f0a4625db34db7e0005be2632c1013b253a4a60e8302ad4d462afd"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:1fcdee18fea97238ed17ab6478c66b2095e4ae7177e35fb71fbe561a27adf620"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-musllinux_1_2_i686.whl", hash = "sha256:933a7d5cd4b84f959aedeb84f2030f0a01d63ae6cf256629af3081cf3e3426e8"},
+    {file = "rpds_py-0.9.2-pp38-pypy38_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:686ba516e02db6d6f8c279d1641f7067ebb5dc58b1d0536c4aaebb7bf01cdc5d"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-macosx_10_7_x86_64.whl", hash = "sha256:0173c0444bec0a3d7d848eaeca2d8bd32a1b43f3d3fde6617aac3731fa4be05f"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-macosx_11_0_arm64.whl", hash = "sha256:d576c3ef8c7b2d560e301eb33891d1944d965a4d7a2eacb6332eee8a71827db6"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ed89861ee8c8c47d6beb742a602f912b1bb64f598b1e2f3d758948721d44d468"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1054a08e818f8e18910f1bee731583fe8f899b0a0a5044c6e680ceea34f93876"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:99e7c4bb27ff1aab90dcc3e9d37ee5af0231ed98d99cb6f5250de28889a3d502"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c545d9d14d47be716495076b659db179206e3fd997769bc01e2d550eeb685596"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9039a11bca3c41be5a58282ed81ae422fa680409022b996032a43badef2a3752"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fb39aca7a64ad0c9490adfa719dbeeb87d13be137ca189d2564e596f8ba32c07"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:2d8b3b3a2ce0eaa00c5bbbb60b6713e94e7e0becab7b3db6c5c77f979e8ed1f1"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-musllinux_1_2_i686.whl", hash = "sha256:99b1c16f732b3a9971406fbfe18468592c5a3529585a45a35adbc1389a529a03"},
+    {file = "rpds_py-0.9.2-pp39-pypy39_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:c27ee01a6c3223025f4badd533bea5e87c988cb0ba2811b690395dfe16088cfe"},
+    {file = "rpds_py-0.9.2.tar.gz", hash = "sha256:8d70e8f14900f2657c249ea4def963bed86a29b81f81f5b76b5a9215680de945"},
 ]
 
 [[package]]
@@ -2012,44 +2012,52 @@ test = ["pytest"]
 
 [[package]]
 name = "sqlalchemy"
-version = "2.0.18"
+version = "2.0.19"
 description = "Database Abstraction Library"
 optional = false
 python-versions = ">=3.7"
 files = [
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:7ddd6d35c598af872f9a0a5bce7f7c4a1841684a72dab3302e3df7f17d1b5249"},
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:00aa050faf24ce5f2af643e2b86822fa1d7149649995f11bc1e769bbfbf9010b"},
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7db97eabd440327c35b751d5ebf78a107f505586485159bcc87660da8bb1fdca"},
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:9da4ee8f711e077633730955c8f3cd2485c9abf5ea0f80aac23221a3224b9a8c"},
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-win32.whl", hash = "sha256:5dd574a37be388512c72fe0d7318cb8e31743a9b2699847a025e0c08c5bf579d"},
-    {file = "SQLAlchemy-2.0.18-cp310-cp310-win_amd64.whl", hash = "sha256:6852cd34d96835e4c9091c1e6087325efb5b607b75fd9f7075616197d1c4688a"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:10e001a84f820fea2640e4500e12322b03afc31d8f4f6b813b44813b2a7c7e0d"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:bffd6cd47c2e68970039c0d3e355c9ed761d3ca727b204e63cd294cad0e3df90"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8b7b3ebfa9416c8eafaffa65216e229480c495e305a06ba176dcac32710744e6"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:79228a7b90d95957354f37b9d46f2cc8926262ae17b0d3ed8f36c892f2a37e06"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ba633b51835036ff0f402c21f3ff567c565a22ff0a5732b060a68f4660e2a38f"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:8da677135eff43502b7afab5a1e641edfb2dc734ba7fc146e9b1b86817a728e2"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-win32.whl", hash = "sha256:82edf3a6090554a83942cec79151d6b5eb96e63d143e80e4cf6671e5d772f6be"},
-    {file = "SQLAlchemy-2.0.18-cp311-cp311-win_amd64.whl", hash = "sha256:69ae0e9509c43474e33152abe1385b8954922544616426bf793481e1a37e094f"},
-    {file = "SQLAlchemy-2.0.18-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:09397a18733fa2a4c7680b746094f980060666ee549deafdb5e102a99ce4619b"},
-    {file = "SQLAlchemy-2.0.18-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1aac42a21a7fa6c9665392c840b295962992ddf40aecf0a88073bc5c76728117"},
-    {file = "SQLAlchemy-2.0.18-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a6f1d8256d06f58e6ece150fbe05c63c7f9510df99ee8ac37423f5476a2cebb4"},
-    {file = "SQLAlchemy-2.0.18-cp37-cp37m-win32.whl", hash = "sha256:67fbb40db3985c0cfb942fe8853ad94a5e9702d2987dec03abadc2f3b6a24afb"},
-    {file = "SQLAlchemy-2.0.18-cp37-cp37m-win_amd64.whl", hash = "sha256:afb322ca05e2603deedbcd2e9910f11a3fd2f42bdeafe63018e5641945c7491c"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:908c850b98cac1e203ababd4ba76868d19ae0d7172cdc75d3f1b7829b16837d2"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:10514adc41fc8f5922728fbac13d401a1aefcf037f009e64ca3b92464e33bf0e"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:420bc6d06d4ae7fb6921524334689eebcbea7bf2005efef070a8562cc9527a37"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:556dc18e39b6edb76239acfd1c010e37395a54c7fde8c57481c15819a3ffb13e"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-win32.whl", hash = "sha256:7b8cba5a25e95041e3413d91f9e50616bcfaec95afa038ce7dc02efefe576745"},
-    {file = "SQLAlchemy-2.0.18-cp38-cp38-win_amd64.whl", hash = "sha256:0f7fdcce52cd882b559a57b484efc92e108efeeee89fab6b623aba1ac68aad2e"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:d7a2c1e711ce59ac9d0bba780318bcd102d2958bb423209f24c6354d8c4da930"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:5c95e3e7cc6285bf7ff263eabb0d3bfe3def9a1ff98124083d45e5ece72f4579"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bfa1a0f83bdf8061db8d17c2029454722043f1e4dd1b3d3d3120d1b54e75825a"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:4ebc542d2289c0b016d6945fd07a7e2e23f4abc41e731ac8ad18a9e0c2fd0ec2"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-win32.whl", hash = "sha256:774bd401e7993452ba0596e741c0c4d6d22f882dd2a798993859181dbffadc62"},
-    {file = "SQLAlchemy-2.0.18-cp39-cp39-win_amd64.whl", hash = "sha256:2756485f49e7df5c2208bdc64263d19d23eba70666f14ad12d6d8278a2fff65f"},
-    {file = "SQLAlchemy-2.0.18-py3-none-any.whl", hash = "sha256:6c5bae4c288bda92a7550fe8de9e068c0a7cd56b1c5d888aae5b40f0e13b40bd"},
-    {file = "SQLAlchemy-2.0.18.tar.gz", hash = "sha256:1fb792051db66e09c200e7bc3bda3b1eb18a5b8eb153d2cedb2b14b56a68b8cb"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9deaae357edc2091a9ed5d25e9ee8bba98bcfae454b3911adeaf159c2e9ca9e3"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0bf0fd65b50a330261ec7fe3d091dfc1c577483c96a9fa1e4323e932961aa1b5"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1d90ccc15ba1baa345796a8fb1965223ca7ded2d235ccbef80a47b85cea2d71a"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb4e688f6784427e5f9479d1a13617f573de8f7d4aa713ba82813bcd16e259d1"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:584f66e5e1979a7a00f4935015840be627e31ca29ad13f49a6e51e97a3fb8cae"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:2c69ce70047b801d2aba3e5ff3cba32014558966109fecab0c39d16c18510f15"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-win32.whl", hash = "sha256:96f0463573469579d32ad0c91929548d78314ef95c210a8115346271beeeaaa2"},
+    {file = "SQLAlchemy-2.0.19-cp310-cp310-win_amd64.whl", hash = "sha256:22bafb1da60c24514c141a7ff852b52f9f573fb933b1e6b5263f0daa28ce6db9"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d6894708eeb81f6d8193e996257223b6bb4041cb05a17cd5cf373ed836ef87a2"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:d8f2afd1aafded7362b397581772c670f20ea84d0a780b93a1a1529da7c3d369"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b15afbf5aa76f2241184c1d3b61af1a72ba31ce4161013d7cb5c4c2fca04fd6e"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8fc05b59142445a4efb9c1fd75c334b431d35c304b0e33f4fa0ff1ea4890f92e"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5831138f0cc06b43edf5f99541c64adf0ab0d41f9a4471fd63b54ae18399e4de"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3afa8a21a9046917b3a12ffe016ba7ebe7a55a6fc0c7d950beb303c735c3c3ad"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-win32.whl", hash = "sha256:c896d4e6ab2eba2afa1d56be3d0b936c56d4666e789bfc59d6ae76e9fcf46145"},
+    {file = "SQLAlchemy-2.0.19-cp311-cp311-win_amd64.whl", hash = "sha256:024d2f67fb3ec697555e48caeb7147cfe2c08065a4f1a52d93c3d44fc8e6ad1c"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:89bc2b374ebee1a02fd2eae6fd0570b5ad897ee514e0f84c5c137c942772aa0c"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dd4d410a76c3762511ae075d50f379ae09551d92525aa5bb307f8343bf7c2c12"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f469f15068cd8351826df4080ffe4cc6377c5bf7d29b5a07b0e717dddb4c7ea2"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:cda283700c984e699e8ef0fcc5c61f00c9d14b6f65a4f2767c97242513fcdd84"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:43699eb3f80920cc39a380c159ae21c8a8924fe071bccb68fc509e099420b148"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-win32.whl", hash = "sha256:61ada5831db36d897e28eb95f0f81814525e0d7927fb51145526c4e63174920b"},
+    {file = "SQLAlchemy-2.0.19-cp37-cp37m-win_amd64.whl", hash = "sha256:57d100a421d9ab4874f51285c059003292433c648df6abe6c9c904e5bd5b0828"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:16a310f5bc75a5b2ce7cb656d0e76eb13440b8354f927ff15cbaddd2523ee2d1"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cf7b5e3856cbf1876da4e9d9715546fa26b6e0ba1a682d5ed2fc3ca4c7c3ec5b"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2e7b69d9ced4b53310a87117824b23c509c6fc1f692aa7272d47561347e133b6"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f9eb4575bfa5afc4b066528302bf12083da3175f71b64a43a7c0badda2be365"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:6b54d1ad7a162857bb7c8ef689049c7cd9eae2f38864fc096d62ae10bc100c7d"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:5d6afc41ca0ecf373366fd8e10aee2797128d3ae45eb8467b19da4899bcd1ee0"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-win32.whl", hash = "sha256:430614f18443b58ceb9dedec323ecddc0abb2b34e79d03503b5a7579cd73a531"},
+    {file = "SQLAlchemy-2.0.19-cp38-cp38-win_amd64.whl", hash = "sha256:eb60699de43ba1a1f77363f563bb2c652f7748127ba3a774f7cf2c7804aa0d3d"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a752b7a9aceb0ba173955d4f780c64ee15a1a991f1c52d307d6215c6c73b3a4c"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:7351c05db355da112e056a7b731253cbeffab9dfdb3be1e895368513c7d70106"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fa51ce4aea583b0c6b426f4b0563d3535c1c75986c4373a0987d84d22376585b"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ae7473a67cd82a41decfea58c0eac581209a0aa30f8bc9190926fbf628bb17f7"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:851a37898a8a39783aab603c7348eb5b20d83c76a14766a43f56e6ad422d1ec8"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:539010665c90e60c4a1650afe4ab49ca100c74e6aef882466f1de6471d414be7"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-win32.whl", hash = "sha256:f82c310ddf97b04e1392c33cf9a70909e0ae10a7e2ddc1d64495e3abdc5d19fb"},
+    {file = "SQLAlchemy-2.0.19-cp39-cp39-win_amd64.whl", hash = "sha256:8e712cfd2e07b801bc6b60fdf64853bc2bd0af33ca8fa46166a23fe11ce0dbb0"},
+    {file = "SQLAlchemy-2.0.19-py3-none-any.whl", hash = "sha256:314145c1389b021a9ad5aa3a18bac6f5d939f9087d7fc5443be28cba19d2c972"},
+    {file = "SQLAlchemy-2.0.19.tar.gz", hash = "sha256:77a14fa20264af73ddcdb1e2b9c5a829b8cc6b8304d0f093271980e36c200a3f"},
 ]
 
 [package.dependencies]
@@ -2210,13 +2218,13 @@ test = ["flake8 (>=2.4.0)", "isort (>=4.2.2)", "pytest (>=2.2.3)"]
 
 [[package]]
 name = "virtualenv"
-version = "20.23.1"
+version = "20.24.0"
 description = "Virtual Python Environment builder"
 optional = false
 python-versions = ">=3.7"
 files = [
-    {file = "virtualenv-20.23.1-py3-none-any.whl", hash = "sha256:34da10f14fea9be20e0fd7f04aba9732f84e593dac291b757ce42e3368a39419"},
-    {file = "virtualenv-20.23.1.tar.gz", hash = "sha256:8ff19a38c1021c742148edc4f81cb43d7f8c6816d2ede2ab72af5b84c749ade1"},
+    {file = "virtualenv-20.24.0-py3-none-any.whl", hash = "sha256:18d1b37fc75cc2670625702d76849a91ebd383768b4e91382a8d51be3246049e"},
+    {file = "virtualenv-20.24.0.tar.gz", hash = "sha256:e2a7cef9da880d693b933db7654367754f14e20650dc60e8ee7385571f8593a3"},
 ]
 
 [package.dependencies]
@@ -2369,4 +2377,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p
 [metadata]
 lock-version = "2.0"
 python-versions = "^3.8"
-content-hash = "354a37235ea931327168b45e655e333a294d022ac1285b3450869f7a1f26a6ef"
+content-hash = "a00c8e8839ddaa3b5f5a7c6cfce52410f5eae645f427db9b0a7dd0dbf069fc28"
diff --git a/pyproject.toml b/pyproject.toml
index a05213a..3f4ea59 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -15,18 +15,18 @@ python = "^3.8"
 click = "*"
 importlib-metadata = ">=4.8.0"
 pyparsing = "^3.0.9"
-bioregistry = "^0.9.43"
-deprecation = "^2.1.0"
-linkml-runtime = "^1.5.3"
-networkx = "^3.1"
-pandas = "^2.0.2"
+bioregistry = ">=0.9.43"
+deprecation = ">=2.1.0"
+linkml-runtime = ">=1.5.3"
+networkx = ">=3.1"
+pandas = ">=2.0.2"
 pansql = "^0.0.1"
-pyyaml = "^6.0"
-rdflib = "^6.3.2"
-sparqlwrapper = "^2.0.0"
-sssom-schema = "^0.13.0"
-validators = "^0.20.0"
-scipy = "*"
+pyyaml = ">=6.0"
+rdflib = ">=6.3.2"
+sparqlwrapper = ">=2.0.0"
+sssom-schema = ">=0.13.0"
+validators = ">=0.20.0"
+scipy = {version = "*", extras = ["scipy"]}
 
 [tool.poetry.group.dev.dependencies]
 pytest = {version = ">=7.1.2"}
diff --git a/src/sssom/constants.py b/src/sssom/constants.py
index e0ac78a..e313ee0 100644
--- a/src/sssom/constants.py
+++ b/src/sssom/constants.py
@@ -14,6 +14,7 @@ from linkml_runtime.utils.schemaview import SchemaView
 HERE = pathlib.Path(__file__).parent.resolve()
 
 SCHEMA_YAML = pkg_resources.resource_filename("sssom_schema", "schema/sssom_schema.yaml")
+EXTERNAL_CONTEXT = HERE / "sssom.external.context.jsonld"
 
 # SCHEMA_VIEW = package_schemaview("sssom_schema")
 
diff --git a/src/sssom/context.py b/src/sssom/context.py
index 045bf7f..1a4813c 100644
--- a/src/sssom/context.py
+++ b/src/sssom/context.py
@@ -7,7 +7,8 @@ from typing import Optional
 
 import pkg_resources
 
-from .external_context import sssom_external_context
+from sssom.constants import EXTERNAL_CONTEXT
+
 from .typehints import Metadata, MetadataType, PrefixMap
 
 # HERE = pathlib.Path(__file__).parent.resolve()
@@ -41,7 +42,9 @@ def get_external_jsonld_context():
 
     :return: JSON-LD context
     """
-    return json.loads(sssom_external_context, strict=False)
+    with open(str(EXTERNAL_CONTEXT), "r") as f:
+        data = json.load(f, strict=False)
+    return data
 
 
 def get_built_in_prefix_map() -> PrefixMap:
diff --git a/src/sssom/external_context.py b/src/sssom/sssom.external.context.jsonld
similarity index 71%
rename from src/sssom/external_context.py
rename to src/sssom/sssom.external.context.jsonld
index f9f3ec8..60731ae 100644
--- a/src/sssom/external_context.py
+++ b/src/sssom/sssom.external.context.jsonld
@@ -1,7 +1,3 @@
-"""This module contains an autogenerated copy of the external SSSOM context."""
-
-# This is autogenerated and super hacky.
-sssom_external_context = """
 {
     "@context": {
         "3dmet": "http://www.3dmet.dna.affrc.go.jp/cgi/show_data.php?acc=",
@@ -9,7 +5,7 @@ sssom_external_context = """
         "4dn.replicate": "https://data.4dnucleome.org/experiment-set-replicates/",
         "AAO": "http://purl.obolibrary.org/obo/AAO_",
         "ADO": "http://purl.obolibrary.org/obo/ADO_",
-        "ADW": "https://animaldiversity.org/accounts/",
+        "ADW": "http://purl.obolibrary.org/obo/ADW_",
         "AEO": "http://purl.obolibrary.org/obo/AEO_",
         "AERO": "http://purl.obolibrary.org/obo/AERO_",
         "AGRO": "http://purl.obolibrary.org/obo/AGRO_",
@@ -47,21 +43,56 @@ sssom_external_context = """
         "CMO": "http://purl.obolibrary.org/obo/CMO_",
         "COB": "http://purl.obolibrary.org/obo/COB_",
         "COLAO": "http://purl.obolibrary.org/obo/COLAO_",
+        "CO_320": "https://cropontology.org/rdf/CO_320:",
+        "CO_321": "https://cropontology.org/rdf/CO_321:",
+        "CO_322": "https://cropontology.org/rdf/CO_322:",
+        "CO_323": "https://cropontology.org/rdf/CO_323:",
+        "CO_324": "https://cropontology.org/rdf/CO_324:",
+        "CO_325": "https://cropontology.org/rdf/CO_325:",
+        "CO_326": "https://cropontology.org/rdf/CO_326:",
+        "CO_327": "https://cropontology.org/rdf/CO_327:",
+        "CO_330": "https://cropontology.org/rdf/CO_330:",
+        "CO_331": "https://cropontology.org/rdf/CO_331:",
+        "CO_333": "https://cropontology.org/rdf/CO_333:",
+        "CO_334": "https://cropontology.org/rdf/CO_334:",
+        "CO_335": "https://cropontology.org/rdf/CO_335:",
+        "CO_336": "https://cropontology.org/rdf/CO_336:",
+        "CO_337": "https://cropontology.org/rdf/CO_337:",
+        "CO_338": "https://cropontology.org/rdf/CO_338:",
+        "CO_339": "https://cropontology.org/rdf/CO_339:",
+        "CO_340": "https://cropontology.org/rdf/CO_340:",
+        "CO_341": "https://cropontology.org/rdf/CO_341:",
+        "CO_343": "https://cropontology.org/rdf/CO_343:",
+        "CO_345": "https://cropontology.org/rdf/CO_345:",
+        "CO_346": "https://cropontology.org/rdf/CO_346:",
+        "CO_347": "https://cropontology.org/rdf/CO_347:",
+        "CO_348": "https://cropontology.org/rdf/CO_348:",
+        "CO_350": "https://cropontology.org/rdf/CO_350:",
+        "CO_356": "https://cropontology.org/rdf/CO_356:",
+        "CO_357": "https://cropontology.org/rdf/CO_357:",
+        "CO_358": "https://cropontology.org/rdf/CO_358:",
+        "CO_359": "https://cropontology.org/rdf/CO_359:",
+        "CO_360": "https://cropontology.org/rdf/CO_360:",
+        "CO_365": "https://cropontology.org/rdf/CO_365:",
+        "CO_366": "https://cropontology.org/rdf/CO_366:",
+        "CO_367": "https://cropontology.org/rdf/CO_367:",
+        "CO_370": "https://cropontology.org/rdf/CO_370:",
         "CRO": "http://purl.obolibrary.org/obo/CRO_",
         "CTENO": "http://purl.obolibrary.org/obo/CTENO_",
         "CTO": "http://purl.obolibrary.org/obo/CTO_",
         "CVDO": "http://purl.obolibrary.org/obo/CVDO_",
+        "ChEMROF": "https://chemkg.github.io/chemrof/",
         "CiTO": "http://purl.org/spar/cito/",
         "DC_CL": "http://purl.obolibrary.org/obo/DC_CL_",
         "DDANAT": "http://purl.obolibrary.org/obo/DDANAT_",
         "DDPHENO": "http://purl.obolibrary.org/obo/DDPHENO_",
         "DEO": "http://purl.org/spar/deo/",
+        "DHBA": "https://biopragmatics.github.io/providers/dhba/",
         "DIDEO": "http://purl.obolibrary.org/obo/DIDEO_",
         "DINTO": "http://purl.obolibrary.org/obo/DINTO_",
         "DISDRIV": "http://purl.obolibrary.org/obo/DISDRIV_",
-        "DOI": "https://doi.org/",
+        "DMBA": "https://biopragmatics.github.io/providers/dmba/",
         "DOID": "http://purl.obolibrary.org/obo/DOID_",
-        "DPO": "http://purl.obolibrary.org/obo/FBcv_",
         "DRON": "http://purl.obolibrary.org/obo/DRON_",
         "DUO": "http://purl.obolibrary.org/obo/DUO_",
         "DataCite": "http://purl.org/spar/datacite/",
@@ -77,9 +108,10 @@ sssom_external_context = """
         "EHDAA2": "http://purl.obolibrary.org/obo/EHDAA2_",
         "EMAP": "http://purl.obolibrary.org/obo/EMAP_",
         "EMAPA": "http://purl.obolibrary.org/obo/EMAPA_",
-        "ENSEMBL": "https://www.ensembl.org/id/",
+        "EMAPS": "https://www.informatics.jax.org/vocab/gxd/anatomy/EMAPS:",
+        "ENSEMBL": "http://rdf.ebi.ac.uk/resource/ensembl/",
         "ENVO": "http://purl.obolibrary.org/obo/ENVO_",
-        "EO": "http://archive.gramene.org/db/ontology/search?query=EO:",
+        "EO": "http://purl.obolibrary.org/obo/EO_",
         "EPIO": "http://purl.obolibrary.org/obo/EPIO_",
         "EPO": "http://purl.obolibrary.org/obo/EPO_",
         "ERO": "http://purl.obolibrary.org/obo/ERO_",
@@ -108,19 +140,24 @@ sssom_external_context = """
         "GECKO": "http://purl.obolibrary.org/obo/GECKO_",
         "GENEPIO": "http://purl.obolibrary.org/obo/GENEPIO_",
         "GENO": "http://purl.obolibrary.org/obo/GENO_",
-        "GEOGEO": "http://purl.obolibrary.org/obo/GEO_",
+        "GEO": "http://purl.obolibrary.org/obo/GEO_",
         "GNO": "http://purl.obolibrary.org/obo/GNO_",
         "GO": "http://purl.obolibrary.org/obo/GO_",
+        "GOCHE": "https://biopragmatics.github.io/providers/goche/",
+        "GRO": "http://purl.obolibrary.org/obo/GRO_",
         "GSSO": "http://purl.obolibrary.org/obo/GSSO_",
         "HABRONATTUS": "http://purl.obolibrary.org/obo/HABRONATTUS_",
         "HANCESTRO": "http://purl.obolibrary.org/obo/HANCESTRO_",
         "HAO": "http://purl.obolibrary.org/obo/HAO_",
+        "HBA": "https://biopragmatics.github.io/providers/hba/",
+        "HEPRO": "http://purl.obolibrary.org/obo/HEPRO_",
         "HOM": "http://purl.obolibrary.org/obo/HOM_",
         "HP": "http://purl.obolibrary.org/obo/HP_",
         "HSO": "http://purl.obolibrary.org/obo/HSO_",
         "HTN": "http://purl.obolibrary.org/obo/HTN_",
         "HsapDv": "http://purl.obolibrary.org/obo/HsapDv_",
         "IAO": "http://purl.obolibrary.org/obo/IAO_",
+        "ICD10WHO": "https://icd.who.int/browse10/2019/en#/",
         "ICEO": "http://purl.obolibrary.org/obo/ICEO_",
         "ICO": "http://purl.obolibrary.org/obo/ICO_",
         "IDO": "http://purl.obolibrary.org/obo/IDO_",
@@ -128,6 +165,7 @@ sssom_external_context = """
         "IEV": "http://purl.obolibrary.org/obo/IEV_",
         "IMR": "http://purl.obolibrary.org/obo/IMR_",
         "INO": "http://purl.obolibrary.org/obo/INO_",
+        "IPR": "http://purl.obolibrary.org/obo/IPR_",
         "KISAO": "http://purl.obolibrary.org/obo/KISAO_",
         "LABO": "http://purl.obolibrary.org/obo/LABO_",
         "LEPAO": "http://purl.obolibrary.org/obo/LEPAO_",
@@ -138,6 +176,7 @@ sssom_external_context = """
         "MAO": "http://purl.obolibrary.org/obo/MAO_",
         "MAT": "http://purl.obolibrary.org/obo/MAT_",
         "MAXO": "http://purl.obolibrary.org/obo/MAXO_",
+        "MBA": "https://biopragmatics.github.io/providers/mba/",
         "MCO": "http://purl.obolibrary.org/obo/MCO_",
         "MF": "http://purl.obolibrary.org/obo/MF_",
         "MFMO": "http://purl.obolibrary.org/obo/MFMO_",
@@ -162,15 +201,16 @@ sssom_external_context = """
         "MS": "http://purl.obolibrary.org/obo/MS_",
         "MmusDv": "http://purl.obolibrary.org/obo/MmusDv_",
         "NBO": "http://purl.obolibrary.org/obo/NBO_",
-        "NCBIGene": "https://www.ncbi.nlm.nih.gov/gene/",
+        "NCBIGene": "http://purl.uniprot.org/geneid/",
         "NCBIProtein": "https://www.ncbi.nlm.nih.gov/protein/",
         "NCBITaxon": "http://purl.obolibrary.org/obo/NCBITaxon_",
         "NCIT": "http://purl.obolibrary.org/obo/NCIT_",
         "NCRO": "http://purl.obolibrary.org/obo/NCRO_",
+        "NGBO": "http://purl.obolibrary.org/obo/NGBO_",
         "NIF_CELL": "http://purl.obolibrary.org/obo/NIF_CELL_",
         "NIF_DYSFUNCTION": "http://purl.obolibrary.org/obo/NIF_DYSFUNCTION_",
         "NIF_GROSSANATOMY": "http://purl.obolibrary.org/obo/NIF_GROSSANATOMY_",
-        "NMR": "https://www.ebi.ac.uk/ols/ontologies/nmrcv/terms?short_form=NMR:",
+        "NMR": "http://purl.obolibrary.org/obo/NMR_",
         "NOMEN": "http://purl.obolibrary.org/obo/NOMEN_",
         "OAE": "http://purl.obolibrary.org/obo/OAE_",
         "OARCS": "http://purl.obolibrary.org/obo/OARCS_",
@@ -202,6 +242,7 @@ sssom_external_context = """
         "OlatDv": "http://purl.obolibrary.org/obo/OlatDv_",
         "PAO": "http://purl.obolibrary.org/obo/PAO_",
         "PATO": "http://purl.obolibrary.org/obo/PATO_",
+        "PBA": "https://biopragmatics.github.io/providers/pba/",
         "PCL": "http://purl.obolibrary.org/obo/PCL_",
         "PCO": "http://purl.obolibrary.org/obo/PCO_",
         "PDRO": "http://purl.obolibrary.org/obo/PDRO_",
@@ -212,6 +253,7 @@ sssom_external_context = """
         "PLANA": "http://purl.obolibrary.org/obo/PLANA_",
         "PLANP": "http://purl.obolibrary.org/obo/PLANP_",
         "PLO": "http://purl.obolibrary.org/obo/PLO_",
+        "PMID": "http://rdf.ncbi.nlm.nih.gov/pubchem/reference/",
         "PO": "http://purl.obolibrary.org/obo/PO_",
         "PORO": "http://purl.obolibrary.org/obo/PORO_",
         "PPO": "http://purl.obolibrary.org/obo/PPO_",
@@ -225,26 +267,29 @@ sssom_external_context = """
         "PdumDv": "http://purl.obolibrary.org/obo/PdumDv_",
         "PuRO": "http://purl.org/spar/pro/",
         "RBO": "http://purl.obolibrary.org/obo/RBO_",
-        "RESID": "https://proteininformationresource.org/cgi-bin/resid?id=",
+        "RESID": "http://purl.obolibrary.org/obo/RESID_",
         "REX": "http://purl.obolibrary.org/obo/REX_",
         "RNAO": "http://purl.obolibrary.org/obo/RNAO_",
         "RO": "http://purl.obolibrary.org/obo/RO_",
         "RS": "http://purl.obolibrary.org/obo/RS_",
         "RXNO": "http://purl.obolibrary.org/obo/RXNO_",
-        "SAO": "http://uri.neuinfo.org/nif/nifstd/sao",
+        "RoleO": "http://purl.obolibrary.org/obo/RoleO_",
+        "SAO": "http://purl.obolibrary.org/obo/SAO_",
         "SBO": "http://purl.obolibrary.org/obo/SBO_",
         "SCDO": "http://purl.obolibrary.org/obo/SCDO_",
-        "SCTID": "http://www.snomedbrowser.com/Codes/Details/",
+        "SCTID": "http://snomed.info/id/",
         "SCoRO": "http://purl.org/spar/scoro/",
         "SEP": "http://purl.obolibrary.org/obo/SEP_",
         "SEPIO": "http://purl.obolibrary.org/obo/SEPIO_",
         "SIBO": "http://purl.obolibrary.org/obo/SIBO_",
+        "SLM": "https://www.swisslipids.org/#/entity/SLM:",
         "SO": "http://purl.obolibrary.org/obo/SO_",
         "SOPHARM": "http://purl.obolibrary.org/obo/SOPHARM_",
         "SPD": "http://purl.obolibrary.org/obo/SPD_",
         "STATO": "http://purl.obolibrary.org/obo/STATO_",
         "SWO": "http://purl.obolibrary.org/obo/SWO_",
         "SYMP": "http://purl.obolibrary.org/obo/SYMP_",
+        "T4FS": "http://purl.obolibrary.org/obo/T4FS_",
         "TADS": "http://purl.obolibrary.org/obo/TADS_",
         "TAHE": "http://purl.obolibrary.org/obo/TAHE_",
         "TAHH": "http://purl.obolibrary.org/obo/TAHH_",
@@ -258,8 +303,9 @@ sssom_external_context = """
         "UBERON": "http://purl.obolibrary.org/obo/UBERON_",
         "UMLS": "http://linkedlifedata.com/resource/umls/id/",
         "UO": "http://purl.obolibrary.org/obo/UO_",
-        "UPA": "http://www.grenoble.prabi.fr/obiwarehouse/unipathway/upa?upid=",
+        "UPA": "http://purl.obolibrary.org/obo/UPA_",
         "UPHENO": "http://purl.obolibrary.org/obo/UPHENO_",
+        "VBO": "http://purl.obolibrary.org/obo/VBO_",
         "VHOG": "http://purl.obolibrary.org/obo/VHOG_",
         "VO": "http://purl.obolibrary.org/obo/VO_",
         "VSAO": "http://purl.obolibrary.org/obo/VSAO_",
@@ -274,27 +320,38 @@ sssom_external_context = """
         "XCO": "http://purl.obolibrary.org/obo/XCO_",
         "XLMOD": "http://purl.obolibrary.org/obo/XLMOD_",
         "XPO": "http://purl.obolibrary.org/obo/XPO_",
+        "YPO": "http://purl.obolibrary.org/obo/YPO_",
         "ZEA": "http://purl.obolibrary.org/obo/ZEA_",
         "ZECO": "http://purl.obolibrary.org/obo/ZECO_",
         "ZFA": "http://purl.obolibrary.org/obo/ZFA_",
         "ZFS": "http://purl.obolibrary.org/obo/ZFS_",
         "ZP": "http://purl.obolibrary.org/obo/ZP_",
+        "aaindex": "http://www.genome.jp/dbget-bin/www_bget?aaindex:",
         "abcd": "https://web.expasy.org/abcd/ABCD_",
-        "abm": "https://www.abmgood.com/catalogsearch/result/?cat=&q=",
+        "abm": "https://www.abmgood.com/search?query=",
+        "abs": "https://identifiers.org/abs:",
         "ac": "http://www.w3.org/ns/activitystreams#",
         "aceview.worm": "https://www.ncbi.nlm.nih.gov/IEB/Research/Acembly/av.cgi?db=worm&c=Gene&l=",
+        "adcad": "https://purl.dataone.org/odo/ADCAD_",
         "addexbio": "https://www.addexbio.com/productdetail?pid=",
         "addgene": "http://addgene.org/",
+        "adms": "http://www.w3.org/ns/adms#",
+        "aeon": "http://purl.obolibrary.org/obo/AEON_",
         "affy.probeset": "https://www.affymetrix.com/LinkServlet?probeset=",
         "aftol.taxonomy": "http://wasabi.lutzonilab.net/pub/displayTaxonInfo?aftol_id=",
         "agricola": "https://agricola.nal.usda.gov/vwebv/holdingsInfo?bibId=",
         "agrkb": "https://www.alliancegenome.org/accession/",
-        "agrovoc": "http://aims.fao.org/aos/agrovoc/c_",
+        "agrovoc": "http://aims.fao.org/aos/agrovoc/",
+        "agsd": "http://www.genomesize.com/result_species.php?id=",
+        "aio": "https://w3id.org/aio/",
+        "alfred": "https://alfred.med.yale.edu/alfred/recordinfo.asp?UNID=",
         "allergome": "http://www.allergome.org/script/dettaglio.php?id_molecule=",
         "alzforum.mutation": "https://www.alzforum.org/mutations/",
+        "alzgene": "http://www.alzgene.org/geneoverview.asp?geneid=",
         "amoebadb": "https://amoebadb.org/amoeba/app/record/gene/",
         "antibodyregistry": "http://antibodyregistry.org/AB_",
         "antweb": "http://www.antweb.org/specimen.do?name=",
+        "anzctr": "https://anzctr.org.au/Trial/Registration/TrialReview.aspx?ACTRN=",
         "aop": "https://aopwiki.org/aops/",
         "aop.events": "https://aopwiki.org/events/",
         "aop.relationships": "https://aopwiki.org/relationships/",
@@ -302,9 +359,9 @@ sssom_external_context = """
         "apaonto": "http://ontology.apa.org/apaonto/termsonlyOUT%20(5).owl#",
         "apd": "http://aps.unmc.edu/AP/database/query_output.php?ID=",
         "aphidbase.transcript": "http://bipaa.genouest.org/apps/grs-2.3/grs?reportID=aphidbase_transcript_report&objectID=",
-        "apid.interactions": "http://cicblade.dep.usal.es:8080/APID/Interactions.action?protein=",
         "arachnoserver": "http://www.arachnoserver.org/toxincard.html?id=",
         "araport": "https://www.arabidopsis.org/servlets/TairObject?type=locus&name=",
+        "archdb": "http://sbi.imim.es/cgi-bin/archdb//loops.pl?loop=",
         "ardb": "http://ardb.cbcb.umd.edu/cgi/search.cgi?db=L&amp;field=ni&amp;term=",
         "ark": "http://n2t.net/ark:",
         "arrayexpress": "https://www.ebi.ac.uk/arrayexpress/experiments/",
@@ -316,53 +373,63 @@ sssom_external_context = """
         "asin": "https://amzn.com/",
         "aspgd.locus": "http://www.aspergillusgenome.org/cgi-bin/locus.pl?dbid=",
         "aspgd.protein": "http://www.aspergillusgenome.org/cgi-bin/protein/proteinPage.pl?dbid=",
+        "asrp": "http://asrp.cgrb.oregonstate.edu/db/sRNAdisplay.html?ASRP_id=",
         "atc": "http://www.whocc.no/atc_ddd_index/?code=",
         "atcc": "https://www.atcc.org/products/",
         "atcvet": "http://www.whocc.no/atcvet/atcvet_index/?code=",
         "atfdb.family": "http://www.bioguo.org/AnimalTFDB/family.php?fam=",
+        "atol": "http://opendata.inra.fr/ATOL/ATOL_",
         "autdb": "http://autism.mindspec.org/GeneDetail/",
+        "babelon": "https://w3id.org/babelon/",
         "bacdive": "https://bacdive.dsmz.de/strain/",
         "bacmap.biog": "http://bacmap.wishartlab.com/organisms/",
+        "bacmap.map": "https://identifiers.org/bacmap.map:",
         "bactibase": "http://bactibase.hammamilab.org/",
         "bao": "http://bioportal.bioontology.org/ontologies/BAO/bao:BAO_",
+        "bartoc": "https://bartoc.org/en/node/",
         "bbkg": "https://bbp.epfl.ch/nexus/web/studios/public/",
         "bbtp": "https://bbp.epfl.ch/nexus/web/studios/public/topological-sampling/studios/data:",
+        "bcio": "https://w3id.org/BCI-ontology#",
         "bcrc": "https://catalog.bcrc.firdi.org.tw/BcrcContent?bid=",
         "bcrj": "http://bcrj.org.br/celula/",
-        "bdgp.est": "https://www.ncbi.nlm.nih.gov/nucest/",
         "bdgp.insertion": "http://flypush.imgen.bcm.tmc.edu/pscreen/details.php?line=",
         "bdsc": "https://bdsc.indiana.edu/stocks/",
         "beetlebase": "http://beetlebase.org/cgi-bin/gbrowse/BeetleBase3.gff3/?name=",
         "begdb": "http://www.begdb.com/index.php?action=oneMolecule&state=show&id=",
         "bgee.family": "http://bgee.unil.ch/bgee/bgee?page=gene_family&action=family_details&gene_family_id=",
-        "bgee.gene": "https://bgee.org/?page=gene&gene_id=",
         "bgee.organ": "http://bgee.unil.ch/bgee/bgee?page=anatomy&action=organ_details&organ_children=on&organ_id=",
         "bgee.stage": "http://bgee.unil.ch/bgee/bgee?page=anatomy&action=organs&stage_children=on&stage_id=",
+        "bibo": "http://purl.org/ontology/bibo/",
         "bigg.compartment": "http://bigg.ucsd.edu/compartments/",
         "bigg.metabolite": "http://bigg.ucsd.edu/models/universal/metabolites/",
         "bigg.model": "http://bigg.ucsd.edu/models/",
         "bigg.reaction": "http://bigg.ucsd.edu/models/universal/reactions/",
+        "bind": "http://www.bind.ca/Action?identifier=bindid&idsearch=",
         "bindingdb": "http://www.bindingdb.org/compact/",
         "biocarta.pathway": "https://cgap.nci.nih.gov/Pathways/BioCarta/",
         "biocatalogue.service": "https://www.biocatalogue.org/services/",
         "biocyc": "http://biocyc.org/getid?id=",
+        "biofactoid": "https://biofactoid.org/document/",
         "biogrid": "http://thebiogrid.org/",
         "biogrid.interaction": "https://thebiogrid.org/interaction/",
+        "biokc": "https://biokb.lcsb.uni.lu/fact/",
         "biolegend": "https://www.biolegend.com/Default.aspx?ID=6664&productid=",
         "biolink": "https://w3id.org/biolink/vocab/",
+        "biomagresbank": "http://www.bmrb.wisc.edu/data_library/generate_summary.php?bmrbId=",
         "biominder": "https://datalab.rwth-aachen.de/MINDER/resource/",
         "biomodels.db": "https://www.ebi.ac.uk/biomodels/",
         "biomodels.teddy": "https://www.ebi.ac.uk/ols/ontologies/teddy/terms?iri=http://identifiers.org/teddy/TEDDY_",
         "biomodels.vocabulary": "http://biomodels.net/rdf/vocabulary.rdf#",
         "bionumbers": "https://bionumbers.hms.harvard.edu/bionumber.aspx?id=",
+        "biopixie": "http://avis.princeton.edu/pixie/viewgraph.php?graphID=",
         "bioportal": "http://bioportal.bioontology.org/ontologies/",
-        "bioproject": "https://www.ncbi.nlm.nih.gov/bioproject/?term=",
         "bioregistry": "https://bioregistry.io/registry/",
         "bioregistry.collection": "https://bioregistry.io/collection/",
         "bioregistry.registry": "https://bioregistry.io/metaregistry/",
         "bioregistry.schema": "https://bioregistry.io/schema/#",
-        "biorxiv": "https://www.biorxiv.org/content/10.1101/",
+        "biorxiv": "http://dx.doi.org/10.1101/",
         "biosample": "https://www.ebi.ac.uk/biosamples/sample/",
+        "bioschemas": "https://bioschemas.org/profiles/",
         "biosimulations": "https://biosimulations.org/projects/",
         "biosimulators": "https://biosimulators.org/simulators/",
         "biostudies": "https://www.ebi.ac.uk/biostudies/studies/",
@@ -374,25 +441,33 @@ sssom_external_context = """
         "bitterdb.cpd": "http://bitterdb.agri.huji.ac.il/bitterdb/compound.php?id=",
         "bitterdb.rec": "http://bitterdb.agri.huji.ac.il/Receptor.php?id=",
         "bko": "http://www.sbgnbricks.org/BKO/full/entry/all/BKO:",
+        "bmrb": "https://identifiers.org/bmrb:",
         "bmrb.restraint": "https://restraintsgrid.bmrb.io/NRG/MRGridServlet?block_text_type=2-parsed&db_username=wattos1&file_detail=2-parsed&format=n%2Fa&program=STAR&request_type=block&subtype=full&type=entry&mrblock_id=",
         "bold.taxonomy": "http://www.boldsystems.org/index.php/Taxbrowser_Taxonpage?taxid=",
-        "brenda": "https://www.brenda-enzymes.org/php/result_flat.php4?ecno=",
         "brenda.ligand": "https://www.brenda-enzymes.de/ligand.php?brenda_ligand_id=",
         "brenda.ligandgroup": "https://www.brenda-enzymes.de/ligand.php?brenda_group_id=",
+        "bridgedb": "http://vocabularies.bridgedb.org/ops#",
         "broad": "https://www.broadinstitute.org/annotation/genome/magnaporthe_grisea/GeneDetails.html?sp=",
+        "bs": "https://biopragmatics.github.io/providers/bs/",
+        "bugbase.expt": "http://bugs.sgul.ac.uk/bugsbase/tabs/experiment.php?action=view&expt_id=",
+        "bugbase.protocol": "http://bugs.sgul.ac.uk/bugsbase/tabs/protocol.php?action=view&protocol_id=",
+        "cabri": "https://identifiers.org/cabri:",
+        "cadsr": "https://identifiers.org/cadsr:",
+        "caloha": "https://www.nextprot.org/term/",
         "cameo": "https://www.cameo3d.org/sp/targets/target/",
         "caps": "http://www.bioinsilico.org/cgi-bin/CAPSDB/getCAPScluster?nidcl=",
-        "cas": "https://commonchemistry.cas.org/detail?ref=",
+        "cas": "https://commonchemistry.cas.org/detail?cas_rn=",
         "casspc": "https://researcharchive.calacademy.org/research/ichthyology/catalog/fishcatget.asp?spid=",
         "cath": "http://www.cathdb.info/cathnode/",
         "cath.domain": "http://www.cathdb.info/domain/",
-        "cath.superfamily": "http://www.cathdb.info/cathnode/",
-        "cattleqtldb": "https://www.animalgenome.org/QTLdb/q?id=QTL_ID:",
+        "cazy": "https://identifiers.org/cazy:",
         "cba": "https://europepmc.org/article/CBA/",
         "cbioportal": "https://www.cbioportal.org/study/summary?id=",
+        "ccdc": "https://identifiers.org/ccdc:",
         "ccds": "http://www.ncbi.nlm.nih.gov/CCDS/CcdsBrowse.cgi?REQUEST=CCDS&DATA=",
+        "ccf": "http://purl.org/ccf/",
         "ccle": "https://www.cbioportal.org/patient?studyId=ccle_broad_2019&caseId=",
-        "cco": "https://www.ebi.ac.uk/ols/ontologies/cco/terms?obo_id=CCO:",
+        "cco": "https://www.ebi.ac.uk/ols4/ontologies/cco/terms?obo_id=CCO:",
         "ccrid": "http://www.cellresource.cn/cellsearch.aspx?sc=1&where=",
         "cdd": "https://www.ncbi.nlm.nih.gov/Structure/cdd/cddsrv.cgi?uid=",
         "cdpd": "http://webprod3.hc-sc.gc.ca/dpd-bdpp/info.do?lang=eng&code=",
@@ -400,73 +475,57 @@ sssom_external_context = """
         "cell_model_passport": "https://cellmodelpassports.sanger.ac.uk/passports/",
         "cellimage": "http://cellimagelibrary.org/images/",
         "cellopub": "https://web.expasy.org/cellosaurus/cellopub/",
-        "cellosaurus": "https://web.expasy.org/cellosaurus/CVCL_",
+        "cellosaurus": "https://www.cellosaurus.org/CVCL_",
         "cellosaurus.resource": "https://bioregistry.io/metaregistry/cellosaurus/",
         "cellrepo": "https://cellrepo.ico2s.org/repositories/",
+        "cemo": "https://biopragmatics.github.io/providers/cemo/",
         "cgd": "http://www.candidagenome.org/cgi-bin/locus.pl?dbid=",
         "cgnc": "http://birdgenenames.org/cgnc/GeneReport?id=",
         "cgsc": "http://cgsc.biology.yale.edu/Site.php?ID=",
         "charprot": "http://www.jcvi.org/charprotdb/index.cgi/view/",
+        "chembank": "http://chembank.broadinstitute.org/chemistry/viewMolecule.htm?cbid=",
         "chembl": "https://www.ebi.ac.uk/chembl/entity/",
         "chembl.cell": "https://www.ebi.ac.uk/chembl/cell_line_report_card/",
-        "chembl.compound": "https://www.ebi.ac.uk/chembl/compound/inspect/",
-        "chembl.target": "https://www.ebi.ac.uk/chembl/target/inspect/",
+        "chembl.compound": "http://rdf.ebi.ac.uk/resource/chembl/molecule/",
         "chemdb": "http://cdb.ics.uci.edu/cgibin/ChemicalDetailWeb.py?chemical_id=",
         "chemidplus": "https://chem.nlm.nih.gov/chemidplus/rn/",
-        "chickenqtldb": "https://www.animalgenome.org/QTLdb/q?id=QTL_ID:",
+        "chemspider": "http://rdf.chemspider.com/",
         "citexplore": "https://europepmc.org/article/CTX/",
         "civic.aid": "https://civicdb.org/links/assertions/",
+        "civic.did": "https://civicdb.org/links/diseases/",
         "civic.eid": "https://civicdb.org/links/evidence/",
+        "civic.gid": "https://civicdb.org/links/gene/",
+        "civic.mpid": "https://civicdb.org/links/molecular_profile/",
+        "civic.sid": "https://civicdb.org/links/sources/",
+        "civic.tid": "https://civicdb.org/links/drugs/",
+        "civic.vgid": "https://civicdb.org/links/variant_group/",
+        "civic.vid": "https://civicdb.org/links/variant/",
         "classyfire": "http://classyfire.wishartlab.com/tax_nodes/C",
+        "clb": "https://www.checklistbank.org/dataset/",
+        "cldb": "https://identifiers.org/cldb:",
         "clingene": "https://reg.clinicalgenome.org/redmine/projects/registry/genboree_registry/by_caid?caid=",
-        "clinicaltrials": "https://clinicaltrials.gov/ct2/show/",
+        "clinicaltrials": "https://www.clinicaltrials.gov/study/",
         "clinvar": "https://www.ncbi.nlm.nih.gov/clinvar/variation/",
         "clinvar.record": "http://www.ncbi.nlm.nih.gov/clinvar/",
         "clinvar.submission": "http://www.ncbi.nlm.nih.gov/clinvar?term=",
         "clinvar.submitter": "https://www.ncbi.nlm.nih.gov/clinvar/submitters/",
         "cls": "https://cls.shop/",
-        "co_320": "https://www.cropontology.org/rdf/CO_320:",
-        "co_321": "https://www.cropontology.org/rdf/CO_321:",
-        "co_322": "https://www.cropontology.org/rdf/CO_322:",
-        "co_323": "https://www.cropontology.org/rdf/CO_323:",
-        "co_324": "https://www.cropontology.org/rdf/CO_324:",
-        "co_325": "https://www.cropontology.org/rdf/CO_325:",
-        "co_327": "https://www.cropontology.org/rdf/CO_327:",
-        "co_330": "https://www.cropontology.org/rdf/CO_330:",
-        "co_331": "https://www.cropontology.org/rdf/CO_331:",
-        "co_333": "https://www.cropontology.org/rdf/CO_333:",
-        "co_334": "https://www.cropontology.org/rdf/CO_334:",
-        "co_335": "https://www.cropontology.org/rdf/CO_335:",
-        "co_336": "https://www.cropontology.org/rdf/CO_336:",
-        "co_337": "https://www.cropontology.org/rdf/CO_337:",
-        "co_338": "https://www.cropontology.org/rdf/CO_338:",
-        "co_339": "https://www.cropontology.org/rdf/CO_339:",
-        "co_340": "https://www.cropontology.org/rdf/CO_340:",
-        "co_341": "https://www.cropontology.org/rdf/CO_341:",
-        "co_343": "https://www.cropontology.org/rdf/CO_343:",
-        "co_345": "https://www.cropontology.org/rdf/CO_345:",
-        "co_346": "https://www.cropontology.org/rdf/CO_346:",
-        "co_347": "https://www.cropontology.org/rdf/CO_347:",
-        "co_348": "https://www.cropontology.org/rdf/CO_348:",
-        "co_350": "https://www.cropontology.org/rdf/CO_350:",
-        "co_356": "https://www.cropontology.org/rdf/CO_356:",
-        "co_357": "https://www.cropontology.org/rdf/CO_357:",
-        "co_358": "https://www.cropontology.org/rdf/CO_358:",
-        "co_359": "https://www.cropontology.org/rdf/CO_359:",
-        "co_360": "https://www.cropontology.org/rdf/CO_360:",
-        "co_365": "https://www.cropontology.org/rdf/CO_365:",
-        "co_366": "https://www.cropontology.org/rdf/CO_366:",
+        "cmpo": "http://www.ebi.ac.uk/cmpo/CMPO_",
         "coconut": "https://coconut.naturalproducts.net/compound/coconut_id/",
         "cog": "https://www.ncbi.nlm.nih.gov/research/cog/cog/",
         "cog.category": "https://www.ncbi.nlm.nih.gov/research/cog/cogcategory/",
         "cog.pathway": "https://www.ncbi.nlm.nih.gov/research/cog/pathway/",
+        "col": "https://www.checklistbank.org/dataset/3LR/taxon/",
         "col.taiwan": "https://taibnet.sinica.edu.tw/eng/taibnet_species_detail.php?name_code=",
         "colonatlas": "http://www.coloncanceratlas.org/search_cell_line?cell_line=",
-        "combine.specifications": "https://co.mbine.org/specifications/",
+        "combine.specifications": "https://identifiers.org/combine.specifications:",
         "come": "https://www.flymine.org/come/entry?gn=",
+        "commoncoreontology": "http://www.ontologyrepository.com/CommonCoreOntologies/",
         "complexportal": "https://www.ebi.ac.uk/complexportal/complex/",
         "comptox": "https://comptox.epa.gov/dashboard/",
-        "compulyeast": "http://compluyeast2dpage.dacya.ucm.es/cgi-bin/2d/2d.cgi?ac=",
+        "conference": "https://w3id.org/scholarlydata/ontology/conference-ontology.owl#",
+        "confident.event": "https://www.confident-conference.org/index.php/Event:",
+        "confident.series": "https://www.confident-conference.org/index.php/Event_Series:",
         "conoserver": "http://www.conoserver.org/?page=card&table=protein&id=",
         "conso": "https://pharmacome.github.io/conso/",
         "cordis.article": "https://cordis.europa.eu/article/id/",
@@ -477,30 +536,42 @@ sssom_external_context = """
         "cosmic": "http://cancer.sanger.ac.uk/cosmic/gene/overview?ln=",
         "cosmic.cell": "https://cancer.sanger.ac.uk/cell_lines/sample/overview?id=",
         "covid19": "https://covid19.sfb.uit.no/api/records/",
+        "covoc": "http://purl.obolibrary.org/obo/COVOC_",
         "cpc": "https://worldwide.espacenet.com/classification?locale=en_EP#!/CPC=",
         "cpt": "https://www.aapc.com/codes/cpt-codes/",
         "crisprdb": "http://crispr.i2bc.paris-saclay.fr/cgi-bin/crispr/SpecieProperties_db.cgi?Taxon_id[]=",
+        "crop2ml": "http://www.crop2ml.org/cropmdb/",
+        "cryoem": "http://scipion.i2pc.es/ontology/CRYOEM_",
         "cryptodb": "https://cryptodb.org/cryptodb/app/record/gene/",
         "csa": "https://www.ebi.ac.uk/thornton-srv/databases/CSA/SearchResults.php?PDBID=",
-        "ctd.chemical": "http://ctdbase.org/detail.go?type=chem&acc=",
-        "ctd.disease": "http://ctdbase.org/detail.go?type=disease&db=MESH&acc=",
-        "ctd.gene": "http://ctdbase.org/detail.go?type=gene&acc=",
+        "csd": "https://identifiers.org/csd:",
+        "csp": "http://purl.bioontology.org/ontology/CSP/",
+        "cst": "https://identifiers.org/cst:",
+        "cst.ab": "https://identifiers.org/cst.ab:",
+        "cstr": "https://cstr.cn/",
+        "ctis": "https://euclinicaltrials.eu/app/#/view/",
+        "cubedb": "https://identifiers.org/cubedb:",
+        "d1id": "https://identifiers.org/d1id:",
         "dailymed": "https://dailymed.nlm.nih.gov/dailymed/drugInfo.cfm?setid=",
         "dandi": "https://dandiarchive.org/dandiset/",
         "darc": "http://darcsite.genzentrum.lmu.de/darc/view.php?id=",
         "dashr": "http://lisanwanglab.org/DASHR/entry/",
+        "dashr.expression": "https://identifiers.org/dashr.expression:",
+        "datacommons": "https://datacommons.org/browser/",
         "datanator.gene": "https://www.datanator.info/gene/",
         "datanator.metabolite": "https://www.datanator.info/metabolite/",
         "datanator.reaction": "https://datanator.info/reaction/",
         "datf": "http://planttfdb.cbi.pku.edu.cn/tf.php?sp=Ath&did=",
+        "dbd": "https://identifiers.org/dbd:",
         "dbest": "https://www.ncbi.nlm.nih.gov/nucest/",
         "dbg2introns": "http://webapps2.ucalgary.ca/~groupii/cgi-bin/intron.cgi?name=",
         "dbgap": "https://www.ncbi.nlm.nih.gov/projects/gap/cgi-bin/study.cgi?study_id=",
+        "dbo": "https://dbpedia.org/ontology/",
         "dbprobe": "https://www.ncbi.nlm.nih.gov/probe/?term=",
         "dbsnp": "https://www.ncbi.nlm.nih.gov/snp/",
         "dbvar.study": "https://www.ncbi.nlm.nih.gov/dbvar/studies/",
         "dbvar.variant": "https://www.ncbi.nlm.nih.gov/dbvar/variants/",
-        "dc": "http://purl.org/dc/terms/",
+        "dc": "http://purl.org/dc/elements/1.1/",
         "dcat": "http://www.w3.org/ns/dcat#",
         "dcterms": "http://purl.org/dc/terms/",
         "dctypes": "http://purl.org/dc/dcmitype/",
@@ -509,7 +580,7 @@ sssom_external_context = """
         "decipher": "https://www.deciphergenomics.org/syndrome/",
         "degradome": "http://degradome.uniovi.es/cgi-bin/protease/",
         "depmap": "https://depmap.org/portal/cell_line/",
-        "depod": "http://www.depod.bioss.uni-freiburg.de/showp.php?gene=",
+        "dermo": "http://purl.obolibrary.org/obo/DERMO_",
         "dev.ga4ghdos": "https://dos-gdc.ucsc-cgp-dev.org/ga4gh/dos/v1/dataobjects/",
         "dg.4503": "https://gen3.biodatacatalyst.nhlbi.nih.gov/ga4gh/drs/v1/objects/",
         "dg.4dfc": "https://nci-crdc.datacommons.io/ga4gh/drs/v1/objects/",
@@ -518,20 +589,29 @@ sssom_external_context = """
         "dg.f82a1a": "https://data.kidsfirstdrc.org/ga4gh/drs/v1/objects/",
         "dg5b0d": "https://data.bloodpac.org/ga4gh/drs/v1/objects/",
         "dgrc": "https://dgrc.bio.indiana.edu/product/View?product=",
+        "dicom": "http://dicom.nema.org/resources/ontology/DCM/",
         "dictybase": "http://dictybase.org/gene/",
         "dictybase.est": "http://dictybase.org/db/cgi-bin/feature_page.pl?primary_id=",
-        "dictybase.gene": "http://dictybase.org/gene/",
         "did": "https://uniresolver.io/#did:",
         "dip": "https://dip.doe-mbi.ucla.edu/dip/DIPview.cgi?ID=",
+        "diseaseclass": "https://biopragmatics.github.io/providers/diseaseclass/",
         "disprot": "https://disprot.org/",
-        "disprot.region": "https://www.disprot.org/",
         "dlxb": "https://doulix.com/biomodules/",
         "dlxc": "https://doulix.com/constructs/",
+        "doap": "http://usefulinc.com/ns/doap#",
+        "doi": "http://dx.doi.org/",
         "dommino": "http://orion.rnet.missouri.edu/~nz953/DOMMINO/index.php/result/show_network/",
         "door": "http://csbl.bmb.uga.edu/DOOR/operon.php?id=",
         "doqcs.model": "http://doqcs.ncbs.res.in/template.php?&y=accessiondetails&an=",
         "doqcs.pathway": "http://doqcs.ncbs.res.in/template.php?&y=pathwaydetails&pn=",
         "dpv": "http://www.dpvweb.net/dpv/showdpv.php?dpvno=",
+        "dragondb.allele": "https://identifiers.org/dragondb.allele:",
+        "dragondb.dna": "https://identifiers.org/dragondb.dna:",
+        "dragondb.locus": "https://identifiers.org/dragondb.locus:",
+        "dragondb.protein": "https://identifiers.org/dragondb.protein:",
+        "drduke": "https://phytochem.nal.usda.gov/phytochem/chemicals/show/",
+        "drks": "https://drks.de/search/en/trial/",
+        "drsanv0": "https://data.terra.bio/ga4gh/drs/v1/objects/",
         "drsc": "http://www.flyrnai.org/cgi-bin/RNAi_gene_lookup_public.pl?gname=",
         "drugbank": "http://www.drugbank.ca/drugs/",
         "drugbank.category": "https://www.drugbank.ca/categories/",
@@ -539,16 +619,22 @@ sssom_external_context = """
         "drugbankv4.target": "http://www.drugbank.ca/biodb/bio_entities/",
         "drugcentral": "http://drugcentral.org/drugcard/",
         "dsmz": "https://www.dsmz.de/collection/catalogue/details/culture/",
+        "dso": "https://www.datascienceontology.org/concept/",
+        "dto": "http://www.drugtargetontology.org/dto/DTO_",
         "eaglei": "http://hawaii.eagle-i.net/i/",
         "easychair.cfp": "https://easychair.org/cfp/",
         "easychair.topic": "https://easychair.org/cfp/topic.cgi?tid=",
         "ebisc": "https://cells.ebisc.org/",
         "ecacc": "https://www.phe-culturecollections.org.uk/products/celllines/generalcell/detail.jsp?collection=ecacc_gc&refId=",
         "eccode": "https://www.ebi.ac.uk/intenz/query?cmd=SearchEC&ec=",
+        "ecg": "http://www.cvrgrid.org/files/ECGOntologyv1.owl#ECG_",
+        "echinobase": "https://www.echinobase.org/entry/gene/showgene.do?method=display&geneId=",
         "echobase": "http://www.york.ac.uk/res/thomas/Gene.cfm?recordID=",
         "ecmdb": "http://ecmdb.ca/compounds/",
-        "ecocyc": "https://biocyc.org/gene?id=",
+        "ecocyc": "https://ecocyc.org/gene?id=",
         "ecogene": "http://www.ecogene.org/gene/",
+        "ecoliwiki": "https://identifiers.org/ecoliwiki:",
+        "ecso": "http://purl.dataone.org/odo/ECSO_",
         "ecyano.entity": "https://www.e-cyanobacterium.org/bcs/entity/",
         "ecyano.experiment": "https://www.e-cyanobacterium.org/experiments-repository/?action=detail&id=",
         "ecyano.model": "https://e-cyanobacterium.org/models/model/",
@@ -558,46 +644,65 @@ sssom_external_context = """
         "edam.format": "http://edamontology.org/format_",
         "edam.operation": "http://edamontology.org/operation_",
         "edam.topic": "http://edamontology.org/topic_",
+        "edda": "http://ontologies.dbmi.pitt.edu/edda/StudyDesigns.owl#",
         "ega.dataset": "https://www.ebi.ac.uk/ega/datasets/",
         "ega.study": "https://www.ebi.ac.uk/ega/studies/",
         "eggnog": "http://eggnog.embl.de/version_3.0/cgi/search.py?search_term_0=",
+        "elm": "https://identifiers.org/elm:",
         "emdb": "https://www.ebi.ac.uk/pdbe/entry/emdb/",
+        "emmo": "http://emmo.info/emmo#EMMO_",
+        "emmo.cif": "http://emmo.info/emmo/cif-core#",
         "emolecules": "https://reaxys.emolecules.com/cgi-bin/more?vid=",
         "empiar": "https://www.ebi.ac.uk/pdbe/emdb/empiar/entry/",
+        "emsl.project": "https://www.emsl.pnnl.gov/project/",
         "ena.embl": "https://www.ebi.ac.uk/ena/browser/view/",
         "encode": "https://www.encodeproject.org/",
-        "ensembl.bacteria": "https://bacteria.ensembl.org/id/",
-        "ensembl.fungi": "https://fungi.ensembl.org/id/",
+        "enm": "http://purl.enanomapper.org/onto/ENM_",
         "ensembl.metazoa": "https://metazoa.ensembl.org/id/",
         "ensembl.plant": "https://plants.ensembl.org/id/",
         "ensembl.protist": "https://protists.ensembl.org/id/",
+        "ensemblglossary": "http://ensembl.org/glossary/ENSGLOSSARY_",
         "envipath": "https://envipath.org/package/",
         "enzo": "https://www.enzolifesciences.com/",
+        "eol": "http://purl.org/obo/owlEOL_",
         "eolife": "https://eol.org/pages/",
-        "epd": "http://epd.vital-it.ch/cgi-bin/query_result.pl?out_format=NICE&Entry_0=",
+        "epd": "https://epd.expasy.org/cgi-bin/epd/query_result.pl?out_format=NICE&Entry_0=",
+        "epso": "http://www.case.edu/EpilepsyOntology.owl#",
         "erm": "https://nanocommons.github.io/identifiers/registry#",
+        "eropmoscow": "http://erop.inbi.ras.ru/result2.php?PepName=",
         "erv": "https://herv.img.cas.cz/s/",
+        "esldb": "http://gpcr.biocomp.unibo.it/cgi-bin/predictors/esldb/dettagli.cgi?codice=",
         "estdab": "https://www.ebi.ac.uk/cgi-bin/ipd/estdab/print_cell.cgi?ESTDAB-",
         "eu89h": "http://data.europa.eu/89h/",
         "euclinicaltrials": "https://www.clinicaltrialsregister.eu/ctr-search/search?query=",
+        "eugenes": "http://eugenes.org:7072/.bin/fbidq.html?",
         "exac.gene": "http://exac.broadinstitute.org/gene/",
         "exac.transcript": "http://exac.broadinstitute.org/transcript/",
         "exac.variant": "http://exac.broadinstitute.org/variant/",
         "fabio": "https://sparontologies.github.io/fabio/current/fabio.html#",
         "facebase": "https://www.facebase.org/data/record/#1/isa:dataset/accession=",
         "fairsharing": "https://fairsharing.org/",
+        "fairsharing.organization": "https://fairsharing.org/organisations/",
+        "fairsharing.user": "https://fairsharing.org/users/",
         "faldo": "http://biohackathon.org/resource/faldo#",
+        "fao.asfis": "https://www.fao.org/fishery/en/species/",
+        "fbol": "https://identifiers.org/fbol:",
         "fbrf": "https://flybase.org/reports/FBrf",
         "fbtc": "https://flybase.org/reports/FBtc",
         "fcb": "https://w3id.org/faircookbook/",
         "fcsfree": "https://fcs-free.org/fcs-database?",
+        "fhir.implementation": "https://hl7.org/fhir/us/",
+        "fishbase.species": "https://www.fishbase.ca/summary/",
         "flowrepository": "https://flowrepository.org/id/",
+        "flymine.chromosome": "https://www.flymine.org/flymine/report/ChromosomeBand/",
         "foaf": "http://xmlns.com/foaf/0.1/",
         "foodb.compound": "http://foodb.ca/compounds/",
         "foodb.food": "https://foodb.ca/foods/",
+        "foodex2": "http://data.food.gov.uk/codes/foodtype/id/",
         "fossilworks.journal": "http://fossilworks.org/?a=referenceInfo&reference_no=",
         "fossilworks.taxon": "http://www.fossilworks.org/cgi-bin/bridge.pl?a=taxonInfo&taxon_no=",
         "fplx": "https://sorgerlab.github.io/famplex/",
+        "frbrer": "http://iflastandards.info/ns/fr/frbr/frbrer/",
         "fsnp": "http://compbio.cs.queensu.ca/cgi-bin/compbio/search/main.cgi?search_mode=id&amp;id_type=snp_id&amp;id_val=",
         "ftt": "https://apps.usgs.gov/thesaurus/term-simple.php?thcode=3&code=",
         "funcbase.fly": "http://func.mshri.on.ca/fly/genes/list_functional_scores/",
@@ -608,23 +713,30 @@ sssom_external_context = """
         "fungidb": "https://fungidb.org/fungidb/app/record/gene/",
         "fungorum": "http://www.indexfungorum.org/names/NamesRecord.asp?RecordID=",
         "ga4ghdos": "https://dataguids.org/ga4gh/dos/v1/dataobjects/",
+        "gabi": "https://identifiers.org/gabi:",
+        "gainesville.core": "http://purl.org/gc/",
+        "galen": "http://www.co-ode.org/ontologies/galen#",
         "gateway": "https://web.www.healthdatagateway.org/dataset/",
         "gbif": "https://www.gbif.org/species/",
         "gc": "https://www.ncbi.nlm.nih.gov/Taxonomy/taxonomyhome.html/index.cgi?chapter=cgencodes#SG",
         "gcst": "https://www.ebi.ac.uk/gwas/studies/",
         "gdc": "https://portal.gdc.cancer.gov/cases/",
         "gdsc": "https://www.cancerrxgene.org/translation/Drug/",
+        "gear": "https://umgear.org/p?id=",
         "gemet": "https://www.eionet.europa.eu/gemet/en/concept/",
         "genatlas": "http://genatlas.medecine.univ-paris5.fr/fiche.php?symbol=",
         "genbank": "https://www.ncbi.nlm.nih.gov/nucleotide/",
+        "gendis": "http://caps.ncbs.res.in/cgi-bin/mini/databases/gendis/sf.cgi?code=",
         "genecards": "https://www.genecards.org/cgi-bin/carddisp.pl?gene=",
+        "genecards.geneloc": "http://genecards.weizmann.ac.il/geneloc-bin/marker_cards.pl?id=",
         "genedb": "https://www.genedb.org/gene/",
         "genefarm": "https://urgi.versailles.inra.fr/Genefarm/Gene/display_gene.htpl?GENE_ID=",
         "genetree": "http://www.ensembl.org/Multi/GeneTree/Image?db=core;gt=",
-        "genewiki": "http://plugins.biogps.org/cgi-bin/wp.cgi?id=",
+        "genpept": "https://identifiers.org/genpept:",
         "genprop": "https://www.ebi.ac.uk/interpro/genomeproperties/#",
         "geo": "https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=",
         "geonames": "https://www.geonames.org/",
+        "gfo": "http://www.onto-med.de/ontologies/gfo.owl#",
         "ghr": "https://medlineplus.gov/genetics/condition/",
         "giardiadb": "https://giardiadb.org/giardiadb/app/record/gene/",
         "github": "https://github.com/",
@@ -634,37 +746,47 @@ sssom_external_context = """
         "glida.gpcr": "http://pharminfo.pharm.kyoto-u.ac.jp/services/glida/gpcr_information.php?id=",
         "glida.ligand": "http://pharminfo.pharm.kyoto-u.ac.jp/services/glida/ligand_information.php?id=",
         "glycoepitope": "https://www.glycoepitope.jp/epitopes/",
-        "glycomedb": "https://glytoucan.org/Structures/Glycans/",
+        "glycomapsdb": "http://www.glycosciences.de/modeling/glycomapsdb/showdetails.php?mapid=",
         "glyconavi": "https://glyconavi.org/hub/?id=",
         "glycopost": "https://glycopost.glycosmos.org/entry/",
+        "glycosciencesdb": "http://www.glycosciences.de/database/start.php?action=explore_linucsid&linucsid=",
         "glygen": "https://glygen.org/glycan/",
         "glytoucan": "https://glytoucan.org/Structures/Glycans/",
+        "gmd": "https://identifiers.org/gmd:",
         "gmd.analyte": "http://gmd.mpimp-golm.mpg.de/Analytes/",
         "gmd.gcms": "http://gmd.mpimp-golm.mpg.de/Spectrums/",
         "gmd.profile": "http://gmd.mpimp-golm.mpg.de/profile/default.aspx?XemlId=",
         "gmd.ref": "http://gmd.mpimp-golm.mpg.de/ReferenceSubstances/",
+        "gnd": "https://lobid.org/gnd/",
+        "gnomad": "https://gnomad.broadinstitute.org/variant/",
         "gnpis": "https://urgi.versailles.inra.fr/gnpis/#result/term=",
+        "gnps.task": "https://gnps.ucsd.edu/ProteoSAFe/status.jsp?task=",
+        "go.gpi": "http://geneontology.org/docs/gene-product-information-gpi-format/#",
         "go.model": "http://noctua.geneontology.org/editor/graph/gomodel:",
+        "go.ref": "https://github.com/geneontology/go-site/blob/master/metadata/gorefs/README.md#goref",
         "go.resource": "https://bioregistry.io/metaregistry/go/",
-        "goa": "https://www.ebi.ac.uk/QuickGO/GProtein?ac=",
         "gold": "https://gold.jgi.doe.gov/resolver?id=",
         "gold.genome": "http://www.genomesonline.org/cgi-bin/GOLD/GOLDCards.cgi?goldstamp=",
-        "gold.meta": "http://genomesonline.org/cgi-bin/GOLD/bin/GOLDCards.cgi?goldstamp=",
+        "goldbook": "http://dx.doi.org/10.1351/goldbook.",
+        "google.book": "https://books.google.com/books?id=",
         "google.patent": "https://www.google.com/patents/",
+        "gorel": "http://purl.obolibrary.org/obo/GOREL_",
         "gpcrdb": "https://gpcrdb.org/protein/",
+        "gpcrnava": "http://nava.liacs.nl/cgi-bin/nava.py?id=",
         "gpmdb": "http://gpmdb.thegpm.org/~/dblist_gpmnum/gpmnum=",
         "graingenes.reference": "https://wheat.pw.usda.gov/cgi-bin/GG3/report.cgi?class=reference&name=",
         "graingenes.symbol": "http://wheat.pw.usda.gov/report?class=gene;name=",
         "gramene.gene": "http://www.gramene.org/db/genes/search_gene?acc=",
-        "gramene.growthstage": "http://www.gramene.org/db/ontology/search?id=GRO:",
         "gramene.protein": "http://www.gramene.org/db/protein/protein_search?protein_id=",
         "gramene.qtl": "http://www.gramene.org/db/qtl/qtl_display?qtl_accession_id=",
         "gramene.reference": "http://www.gramene.org/db/literature/pub_search?ref_id=",
-        "gramene.taxonomy": "http://www.gramene.org/db/ontology/search?id=",
+        "gramene.taxonomy": "https://archive.gramene.org/db/ontology/search?id=GR_tax:",
         "grassbase": "https://www.kew.org/data/grasses-db/www/",
         "greengenes": "http://greengenes.lbl.gov/cgi-bin/show_one_record_v2.pl?prokMSA_id=",
         "grid": "https://www.grid.ac/institutes/",
+        "grin": "http://www.ars.usda.gov/research/publications/publications.htm?seq_no_115=",
         "grin.taxonomy": "http://www.ars-grin.gov/cgi-bin/npgs/html/taxon.pl?",
+        "gro": "http://www.bootstrep.eu/ontology/GRO#",
         "grsdb": "http://bioinformatics.ramapo.edu/GRSDB2/geneview.php?geneID=",
         "gsfa": "http://www.fao.org/gsfaonline/additives/details.html?id=",
         "gtex": "https://www.gtexportal.org/home/gene/",
@@ -675,44 +797,64 @@ sssom_external_context = """
         "gwascentral.study": "https://www.gwascentral.org/study/",
         "gxa.expt": "https://www.ebi.ac.uk/gxa/experiments/",
         "gxa.gene": "https://www.ebi.ac.uk/gxa/genes/",
+        "hagr.genage": "http://genomics.senescence.info/genes/details.php?id=",
+        "hagr.gendr": "http://genomics.senescence.info/diet/details.php?id=",
         "hamap": "https://hamap.expasy.org/unirule/",
+        "hathitrust": "https://catalog.hathitrust.org/Record/",
+        "hbvar": "http://globin.bx.psu.edu/cgi-bin/hbvar/query_vars3?mode=output&display_format=page&i=",
+        "hc.npn": "http://webprod.hc-sc.gc.ca/nhpid-bdipsn/ingredReq.do?id=",
+        "hcpcs": "http://purl.bioontology.org/ontology/HCPCS/",
         "hcvdb": "https://euhcvdb.ibcp.fr/euHCVdb/do/displayHCVEntry?primaryAC=",
+        "hdl": "http://hdl.handle.net/",
         "hdr": "http://research.nhgri.nih.gov/apps/homeodomain/web/index.cgi?mode=view&amp;view=proteins&amp;id=",
         "hgmd": "http://www.hgmd.cf.ac.uk/ac/gene.php?gene=",
         "hgnc": "https://www.genenames.org/data/gene-symbol-report/#!/hgnc_id/",
-        "hgnc.genefamily": "https://www.genenames.org/cgi-bin/genefamilies/set/",
         "hgnc.genegroup": "https://www.genenames.org/cgi-bin/genefamilies/set/",
         "hgnc.symbol": "https://www.genenames.org/cgi-bin/gene_symbol_report?match=",
         "hinv.locus": "http://h-invitational.jp/hinv/spsoup/locus_view?hix_id=",
         "hinv.protein": "http://h-invitational.jp/hinv/protein/protein_view.cgi?hip_id=",
         "hinv.transcript": "http://h-invitational.jp/hinv/spsoup/transcript_view?hit_id=",
-        "hipsci": "http://www.hipsci.org/lines/#/lines/",
+        "hipsci": "https://www.hipsci.org/lines/#/lines/",
+        "hl7.v2codesystem": "http://terminology.hl7.org/CodeSystem/v2-",
+        "hl7.v3codesystem": "https://terminology.hl7.org/CodeSystem-v3-",
         "hmdb": "http://www.hmdb.ca/metabolites/",
+        "hms.lincs.antibody": "https://lincs.hms.harvard.edu/db/antibodies/",
+        "hms.lincs.cell": "https://lincs.hms.harvard.edu/db/cells/",
         "hms.lincs.compound": "https://lincs.hms.harvard.edu/db/sm/",
+        "hms.lincs.dataset": "https://lincs.hms.harvard.edu/db/datasets/",
+        "hog": "https://biopragmatics.github.io/providers/hog/",
         "hogenom": "http://pbil.univ-lyon1.fr/cgi-bin/view-tree.pl?db=HOGENOM5&query=",
+        "hoip": "http://purl.bioontology.org/ontology/HOIP/HOIP_",
         "homd.seq": "http://www.homd.org/modules.php?op=modload&name=GenomeList&file=index&link=detailinfo&seqid=",
-        "homd.taxon": "www.homd.org/modules.php?op=modload&name=HOMD&view=dynamic&oraltaxonid=",
+        "homd.taxon": "http://www.homd.org/modules.php?op=modload&name=HOMD&view=dynamic&oraltaxonid=",
         "homologene": "https://www.ncbi.nlm.nih.gov/homologene/",
         "horizon_discovery": "https://horizondiscovery.com/en/search?searchterm=",
+        "hovergen": "https://identifiers.org/hovergen:",
         "hpa": "http://www.proteinatlas.org/",
+        "hpath": "http://purl.obolibrary.org/obo/MC_",
         "hpm.peptide": "http://www.humanproteomemap.org/spectrum.php?pep_id=",
         "hpm.protein": "http://www.humanproteomemap.org/protein.php?hpm_id=",
         "hprd": "http://www.hprd.org/protein/",
         "hpscreg": "https://hpscreg.eu/cell-line/",
         "hsdb": "https://pubchem.ncbi.nlm.nih.gov/source/hsdb/",
+        "hssp": "https://identifiers.org/hssp:",
         "huge": "https://www.kazusa.or.jp/huge/gfpage/",
-        "icd10": "http://apps.who.int/classifications/icd10/browse/2010/en#/",
         "icd10cm": "https://icd.codes/icd10cm/",
         "icd10pcs": "https://www.findacode.com/code.php?set=ICD10PCS&c=",
         "icd11": "https://icd.who.int/browse11/l-m/en#/http://id.who.int/icd/entity/",
-        "icd9": "http://www.icd9data.com/getICD9Code.ashx?icd9=",
         "icd9cm": "http://icd9cm.chrisendres.com/index.php?action=search&srchtext=",
         "icdc": "https://caninecommons.cancer.gov/#/study/",
         "icdo": "http://codes.iarc.fr/search.php?cx=009987501641899931167%3A2_7lsevqpdm&cof=FORID%3A9&ie=UTF-8&ie=ISO-8859-1&oe=ISO-8859-1&sa=&q=",
-        "iceberg.element": "http://db-mml.sjtu.edu.cn/ICEberg/feature_page.php?ice_id=",
-        "iceberg.family": "http://db-mml.sjtu.edu.cn/ICEberg/browse_result.php?type=fam&fam_id=",
+        "iceberg.element": "https://bioinfo-mml.sjtu.edu.cn/ICEberg2/feature_page.php?ice_id=",
+        "iceberg.family": "https://bioinfo-mml.sjtu.edu.cn/ICEberg2/browse_result.php?type=fam&fam_id=",
+        "icepo": "https://biopragmatics.github.io/providers/icepo/",
+        "icf": "http://id.who.int/icd/entity/",
         "iclc": "http://www.iclc.it/details/det_list.php?line_id=",
+        "icldb": "https://entomology.ca.uky.edu/content/",
         "ideal": "http://idp1.force.cs.is.nagoya-u.ac.jp/IDEAL/ideal.php?id=",
+        "idocovid19": "http://purl.obolibrary.org/obo/COVIDO_",
+        "idoden": "http://purl.bioontology.org/ontology/IDODEN_",
+        "idog": "https://ngdc.cncb.ac.cn/idog/breed/getBreedDetail.action?breedId=",
         "idoo": "http://registry.api.hq.identifiers.org/semanticApi/getRegistryOntology#",
         "idot": "https://biomodels.net/vocab/idot.rdf#",
         "idpo": "https://www.disprot.org/idpo/IDPO:",
@@ -722,66 +864,69 @@ sssom_external_context = """
         "igsn": "http://igsn.org/",
         "igsr": "https://www.internationalgenome.org/data-portal/sample/",
         "imanis": "https://www.imanislife.com/?s=",
-        "imex": "https://www.ebi.ac.uk/intact/imex/main.xhtml?query=",
+        "imex": "https://www.ebi.ac.uk/intact/imex/main.xhtml?query=IM-",
         "img.gene": "http://img.jgi.doe.gov/cgi-bin/w/main.cgi?section=GeneDetail&gene_oid=",
         "img.taxon": "http://img.jgi.doe.gov/cgi-bin/w/main.cgi?section=TaxonDetail&taxon_oid=",
         "imgt.hla": "https://www.ebi.ac.uk/cgi-bin/imgt/hla/get_allele.cgi?",
         "imgt.ligm": "http://www.imgt.org/ligmdb/view?id=",
+        "imotdb": "http://caps.ncbs.res.in/cgi-bin/mini/databases/imotdb/imotdb.cgi?sfcode=",
+        "inaturalist.observation": "https://www.inaturalist.org/observations/",
+        "inaturalist.place": "https://www.inaturalist.org/places/",
         "inaturalist.taxon": "https://www.inaturalist.org/taxa/",
+        "inaturalist.user": "https://www.inaturalist.org/users/",
         "inchi": "http://www.chemspider.com/",
         "inchikey": "http://www.chemspider.com/inchikey=",
         "inn": "https://mednet-communities.net/inn/db/ViewINN.aspx?i=",
+        "innatedb": "http://www.innatedb.ca/getGeneCard.do?id=",
         "insdc": "https://www.ncbi.nlm.nih.gov/nuccore/",
-        "insdc.cds": "http://getentry.ddbj.nig.ac.jp/getentry/dad/",
-        "insdc.gca": "https://www.ebi.ac.uk/ena/data/view/",
-        "insdc.run": "https://www.ebi.ac.uk/ena/browser/view/",
         "insdc.sra": "https://www.ncbi.nlm.nih.gov/sra/",
         "intact": "https://www.ebi.ac.uk/intact/interaction/",
-        "intact.molecule": "https://www.ebi.ac.uk/intact/molecule/",
+        "intact.molecule": "https://www.ebi.ac.uk/intact/search?query=",
+        "interfil": "http://www.interfil.org/details.php?id=",
         "interlex": "https://scicrunch.org/scicrunch/interlex/view/ilx_",
-        "interpro": "https://www.ebi.ac.uk/interpro/entry/",
+        "iobc": "http://purl.jp/bio/4/id/",
         "ird.segment": "http://www.fludb.org/brc/fluSegmentDetails.do?ncbiGenomicAccession=",
         "irefweb": "http://wodaklab.org/iRefWeb/interaction/show/",
+        "iresite": "http://www.iresite.org/IRESite_web.php?page=view&entry_id=",
         "iro": "https://legacy.vectorbase.org/ontology-browser?cv=MIRO&t=IRO:",
         "isbn": "http://isbndb.com/search-all.html?kw=",
         "isfinder": "https://www-is.biotoul.fr/scripts/ficheIS.php?name=",
         "isni": "http://www.isni.org/isni/",
+        "iso15926": "http://standards.iso.org/iso/15926/part14/",
+        "isrctn": "https://www.isrctn.com/",
         "issn": "https://portal.issn.org/resource/ISSN/",
         "itis": "https://www.itis.gov/servlet/SingleRpt/SingleRpt?search_topic=TSN&search_value=",
-        "ito": "https://bioportal.bioontology.org/ontologies/ITO/?p=classes&conceptid=https%3A%2F%2Fai-strategies.org%2Fontology%2F",
+        "ito": "https://bioportal.bioontology.org/ontologies/ITO/?p=classes&conceptid=https://identifiers.org/ito:ITO_",
         "iuphar.family": "http://www.guidetopharmacology.org/GRAC/FamilyDisplayForward?familyId=",
         "iuphar.ligand": "http://www.guidetopharmacology.org/GRAC/LigandDisplayForward?ligandId=",
         "iuphar.receptor": "http://www.guidetopharmacology.org/GRAC/ObjectDisplayForward?objectId=",
+        "ivdb": "http://influenza.psych.ac.cn/search/detail.jsp?segment.gb_id=",
         "jax": "https://www.jax.org/strain/",
+        "jaxmice": "https://identifiers.org/jaxmice:",
         "jcggdb": "http://jcggdb.jp/idb/jcggdb/",
         "jcm": "http://www.jcm.riken.go.jp/cgi-bin/jcm/jcm_number?JCM=",
         "jcrb": "https://cellbank.nibiohn.go.jp/~cellbank/en/search_res_det.cgi?RNO=",
         "jcsd": "http://jglobal.jst.go.jp/en/redirect?Nikkaji_No=",
+        "jgi.proposal": "https://genome.jgi.doe.gov/portal/lookup?keyName=proposalId&groupOnly=1&app=Info&keyValue=",
+        "jrct": "https://jrct.niph.go.jp/en-latest-detail/",
         "jstor": "http://www.jstor.org/stable/",
         "jws": "https://jjj.bio.vu.nl/models/",
         "kaggle": "https://www.kaggle.com/",
         "kclb": "https://cellbank.snu.ac.kr/english/sub/catalog.php?s_cellid=464&page=detail_info&CatNo=59&strQ=",
         "kegg": "http://www.kegg.jp/entry/",
-        "kegg.compound": "https://www.kegg.jp/entry/",
-        "kegg.disease": "http://www.kegg.jp/entry/",
-        "kegg.drug": "https://www.kegg.jp/entry/",
-        "kegg.environ": "http://www.kegg.jp/entry/",
-        "kegg.enzyme": "http://www.genome.jp/dbget-bin/www_bget?ec:",
-        "kegg.genes": "http://www.kegg.jp/entry/",
-        "kegg.genome": "http://www.kegg.jp/entry/",
-        "kegg.glycan": "https://www.kegg.jp/entry/",
-        "kegg.ligand": "http://www.genome.jp/dbget-bin/www_bget?cpd:",
-        "kegg.metagenome": "http://www.kegg.jp/entry/",
-        "kegg.module": "http://www.kegg.jp/entry/",
-        "kegg.orthology": "http://www.kegg.jp/entry/",
-        "kegg.pathway": "https://www.kegg.jp/entry/",
-        "kegg.reaction": "https://www.kegg.jp/entry/",
+        "kegg.brite": "http://www.genome.jp/kegg-bin/get_htext?-p+/kegg/brite/br+br",
+        "kestrelo": "http://purl.obolibrary.org/obo/kestrelo_",
         "knapsack": "http://www.knapsackfamily.com/knapsack_core/information.php?word=",
+        "langual": "https://www.langual.org/langual_thesaurus.asp?termid=",
+        "lbo": "http://purl.obolibrary.org/obo/LBO_",
+        "lcsh": "http://id.loc.gov/authorities/names/",
         "lei": "https://www.gleif.org/lei/",
         "lgai.cede": "https://s3.us-east-2.amazonaws.com/lg.cede/",
+        "lgic": "https://identifiers.org/lgic:",
         "licebase": "https://licebase.org/?q=",
         "ligandbook": "https://ligandbook.org/package/",
         "ligandbox": "http://www.mypresto5.com/ligandbox/cgi-bin/liginf.cgi?id=",
+        "ligandexpo": "https://identifiers.org/ligandexpo:",
         "ligea": "http://hpc-bioinformatics.cineca.it/fusion/cell_line/",
         "limore": "https://www.picb.ac.cn/limore/cellLines/single?para=",
         "lincs.cell": "http://lincsportal.ccs.miami.edu/cells/#/view/",
@@ -789,33 +934,43 @@ sssom_external_context = """
         "lincs.protein": "https://lincs.hms.harvard.edu/db/proteins/",
         "lincs.smallmolecule": "http://lincsportal.ccs.miami.edu/SmallMolecules/#/view/",
         "linguist": "https://raw.githubusercontent.com/github/linguist/master/lib/linguist/languages.yml#",
+        "linkml": "https://w3id.org/linkml/",
         "lipidbank": "http://lipidbank.jp/cgi-bin/detail.cgi?id=",
         "lipidmaps": "http://www.lipidmaps.org/data/LMSDRecord.php?LMID=",
-        "loinc": "https://loinc.org/",
+        "loinc": "http://loinc.org/rdf/",
         "lonza": "https://knowledge.lonza.com/cell?id=",
+        "loqate": "http://www.weizmann.ac.il/molgen/loqate/gene/view/",
         "lotus": "https://lotus.naturalproducts.net/compound/lotus_id/",
         "lpt": "http://purl.obolibrary.org/obo/LPT_",
+        "lrg": "https://identifiers.org/lrg:",
         "lspci": "https://labsyspharm.github.io/lspci/",
         "lter": "https://vocab.lternet.edu/vocab/vocab/index.php?tema=",
         "macie": "https://www.ebi.ac.uk/thornton-srv/databases/cgi-bin/MACiE/entry/getPage.pl?id=",
         "maizegdb.locus": "http://www.maizegdb.org/cgi-bin/displaylocusrecord.cgi?id=",
-        "massbank": "http://www.massbank.jp/RecordDisplay?id=",
+        "mampol": "http://mampol.uab.es/cgi-bin/MamPol_s2.pl?Accession=",
+        "massbank": "https://massbank.jp/RecordDisplay?id=",
         "massive": "https://massive.ucsd.edu/ProteoSAFe/QueryMSV?id=",
         "matrixdb": "http://matrixdb.univ-lyon1.fr/cgi-bin/current/newPort?type=biomolecule&value=",
+        "matrixdb.association": "https://identifiers.org/matrixdb.association:",
+        "mcc": "http://www.semanticweb.org/pallabi.d/ontologies/2014/2/untitled-ontology-11#",
         "mdm": "https://medical-data-models.org/forms/",
-        "meddra": "http://purl.bioontology.org/ontology/MEDDRA/",
+        "meddra": "http://purl.bioontology.org/ontology/MDRFRE/",
         "medgen": "https://www.ncbi.nlm.nih.gov/medgen/",
+        "medlineplus": "https://identifiers.org/medlineplus:",
         "merops.clan": "https://www.ebi.ac.uk/merops/cgi-bin/clansum?clan=",
         "merops.entry": "https://www.ebi.ac.uk/merops/cgi-bin/pepsum?id=",
         "merops.family": "https://www.ebi.ac.uk/merops/cgi-bin/famsum?family=",
-        "mesh": "https://meshb.nlm.nih.gov/record/ui?ui=",
+        "mesh": "http://id.nlm.nih.gov/mesh/",
+        "mesh.vocab": "http://id.nlm.nih.gov/mesh/vocab#",
         "metabolights": "https://www.ebi.ac.uk/metabolights/",
         "metacyc.compound": "https://metacyc.org/compound?orgid=META&id=",
         "metacyc.reaction": "https://metacyc.org/META/NEW-IMAGE?type=REACTION&object=",
         "metanetx.chemical": "https://www.metanetx.org/chem_info/",
         "metanetx.compartment": "https://www.metanetx.org/comp_info/",
         "metanetx.reaction": "https://www.metanetx.org/equa_info/",
+        "metatlas": "https://metabolicatlas.org/identifier/MetabolicAtlas/",
         "metlin": "http://metlin.scripps.edu/metabo_info.php?molid=",
+        "metnetdb": "http://metnetonline.org/browse_pathway2.php?pthID=",
         "mex": "https://www.metabolome-express.org/datasetview.php?datasetid=",
         "mge": "http://aclame.ulb.ac.be/perl/Aclame/Genomes/mge_view.cgi?view=info&id=mge:",
         "mgnify.analysis": "https://www.ebi.ac.uk/metagenomics/analyses/",
@@ -827,16 +982,19 @@ sssom_external_context = """
         "mimodb": "http://immunet.cn/bdb/index.php/mimoset/",
         "minid": "https://hdl.handle.net/hdl:20.500.12582/",
         "minid.test": "https://hdl.handle.net/hdl:20.500.12633/",
-        "mint": "http://mint.bio.uniroma2.it/mint/search/inFrameInteraction.do?interactionAc=",
+        "mint": "https://mint.bio.uniroma2.it/index.php/detailed-curation/?id=MINT-",
         "mipmod": "http://bioinfo.iitk.ac.in/MIPModDB/result.php?code=",
+        "mir": "https://registry.identifiers.org/registry?query=MIR:",
         "mirbase": "http://www.mirbase.org/cgi-bin/mirna_entry.pl?acc=",
         "mirbase.family": "http://www.mirbase.org/cgi-bin/mirna_summary.pl?fam=",
         "mirbase.mature": "http://mirbase.org/cgi-bin/mature.pl?mature_acc=",
+        "mirex": "https://identifiers.org/mirex:",
         "miriam": "https://registry.identifiers.org/registry/",
         "miriam.collection": "https://www.ebi.ac.uk/miriam/main/",
         "miriam.resource": "https://www.ebi.ac.uk/miriam/main/resources/",
         "mirnest": "http://rhesus.amu.edu.pl/mirnest/copy/details.php?id=",
         "mirtarbase": "http://mirtarbase.mbc.nctu.edu.tw/php/detail.php?mirtid=",
+        "mixs": "https://w3id.org/mixs/",
         "mlc": "https://www.mlcommons.org/mlc-id/",
         "mmdb": "http://www.ncbi.nlm.nih.gov/Structure/mmdb/mmdbsrv.cgi?uid=",
         "mmmp.biomaps": "http://www.mmmp.org/MMMP/public/biomap/viewBiomap.mmmp?id=",
@@ -845,17 +1003,19 @@ sssom_external_context = """
         "mmp.fun": "https://mmp.sfb.uit.no/databases/marfun/#/records/",
         "mmp.ref": "https://mmp.sfb.uit.no/databases/marref/#/records/",
         "mmrrc": "http://www.mmrrc.org/catalog/getSDS.php?mmrrc_id=",
-        "mobidb": "https://mobidb.org/",
-        "modeldb": "http://senselab.med.yale.edu/ModelDB/ShowModel.asp?model=",
+        "mmsinc": "http://mms.dsfarm.unipd.it/mmsinc/search/molecule.php?mmscode=",
+        "modeldb": "https://modeldb.science/",
+        "modeldb.concept": "https://senselab.med.yale.edu/ModelDB/ModelList?id=",
         "molbase": "http://www.molbase.com/en/index.php?app=search&search_keyword=",
         "molmedb": "https://molmedb.upol.cz/mol/",
+        "molmovdb": "http://www.molmovdb.org/cgi-bin/morph.cgi?ID=",
         "morpheus": "https://morpheus.gitlab.io/models/",
+        "mosaic": "https://purl.dataone.org/odo/MOSAIC_",
         "mpid": "http://www.jcvi.org/mpidb/experiment.php?interaction_id=",
         "msigdb": "https://biopragmatics.github.io/providers/msigdb/",
+        "msio": "http://purl.obolibrary.org/obo/MSIO_",
+        "mtbd": "http://tumor.informatics.jax.org/mtbwi/strainDetails.do?key=",
         "multicellds": "http://multicellds.org/MultiCellDB/",
-        "multicellds.cell_line": "http://multicellds.org/MultiCellDB/",
-        "multicellds.collection": "http://multicellds.org/MultiCellDB/",
-        "multicellds.snapshot": "http://multicellds.org/MultiCellDB/",
         "mw.project": "http://www.metabolomicsworkbench.org/data/DRCCMetadata.php?Mode=Project&ProjectID=",
         "mw.study": "http://www.metabolomicsworkbench.org/data/DRCCMetadata.php?Mode=Study&StudyID=",
         "myco.lepra": "http://mycobrowser.epfl.ch/leprosysearch.php?gene+name=",
@@ -864,21 +1024,27 @@ sssom_external_context = """
         "myco.tuber": "http://tuberculist.epfl.ch/quicksearch.php?gene+name=",
         "mycobank": "http://www.mycobank.org/Biolomics.aspx?Table=Mycobank&MycoBankNr_=",
         "mzspec": "http://proteomecentral.proteomexchange.org/usi/?usi=mzspec:",
+        "nando": "https://nanbyodata.jp/disease/NANDO:",
         "napdi": "https://repo.napdi.org/study/",
         "napp": "http://rna.igmors.u-psud.fr/NAPP/Niveau2.php?specie=",
         "narcis": "http://www.narcis.nl/publication/RecordID/",
         "nasc": "http://arabidopsis.info/StockInfo?NASC_id=",
+        "nbn": "https://identifiers.org/nbn:",
         "nbrc": "http://www.nbrc.nite.go.jp/NBRC2/NBRCCatalogueDetailServlet?ID=NBRC&CAT=",
         "ncats.bioplanet": "https://tripod.nih.gov/bioplanet/detail.jsp?pid=bioplanet_",
         "ncats.drug": "https://drugs.ncats.io/drug/",
-        "ncbi.assembly": "https://www.ncbi.nlm.nih.gov/assembly/",
+        "ncbi.assembly": "https://www.ncbi.nlm.nih.gov/datasets/genome/",
         "ncbi.genome": "https://www.ncbi.nlm.nih.gov/genome/",
         "ncbi.resource": "https://bioregistry.io/metaregistry/ncbi/",
         "ncbibook": "https://www.ncbi.nlm.nih.gov/books/",
         "ncim": "http://ncim.nci.nih.gov/ncimbrowser/ConceptReport.jsp?dictionary=NCI%20MetaThesaurus&code=",
         "ndc": "http://www.hipaaspace.com/Medical_Billing/Coding/National.Drug.Codes/",
+        "nddf": "http://purl.bioontology.org/ontology/NDDF/",
         "ndex": "https://www.ndexbio.org/viewer/networks/",
+        "ndfrt": "http://purl.bioontology.org/ontology/NDFRT/",
+        "nembase": "http://www.nematodes.org/nembase4/cluster.php?cluster=",
         "nemo": "https://assets.nemoarchive.org/",
+        "nemo2": "http://purl.bioontology.org/NEMO/ontology/NEMO.owl#NEMO_",
         "neurolex": "http://uri.neuinfo.org/nif/nifstd/nlx_",
         "neuromorpho": "http://neuromorpho.org/neuron_info.jsp?neuron_name=",
         "neuronames": "http://braininfo.rprc.washington.edu/centraldirectory.aspx?ID=",
@@ -888,12 +1054,16 @@ sssom_external_context = """
         "nextdb": "http://nematode.lab.nig.ac.jp/db2/ShowCloneInfo.php?clone=",
         "nextprot": "https://www.nextprot.org/db/entry/",
         "nextprot.family": "https://www.nextprot.org/term/FA-",
+        "nfdi4chem.cao": "http://champ-project.org/images/ontology/cao.owl#CAO_",
         "ngl": "https://genelab-data.ndc.nasa.gov/genelab/accession/",
         "nhcdr": "https://stemcells.nindsgenetics.org?line=",
         "niaest": "http://lgsun.grc.nia.nih.gov/cgi-bin/pro3?sname1=",
         "nif.ext": "http://uri.neuinfo.org/nif/nifstd/nifext_",
         "nif.std": "http://uri.neuinfo.org/nif/nifstd/",
+        "nihhesc": "https://grants.nih.gov/stem_cells/registry/current.htm?ID=",
         "nihreporter.project": "https://reporter.nih.gov/project-details/",
+        "nkos": "http://w3id.org/nkos/",
+        "nlfff": "http://database.deepsolar.space:18080/dbs/nlfff/",
         "nlm": "https://www.ncbi.nlm.nih.gov/nlmcatalog/",
         "nlx.anat": "http://uri.neuinfo.org/nif/nifstd/nlx_anat_",
         "nlx.br": "http://uri.neuinfo.org/nif/nifstd/nlx_br_",
@@ -909,6 +1079,7 @@ sssom_external_context = """
         "nlx.res": "http://uri.neuinfo.org/nif/nifstd/nlx_res_",
         "nlx.sub": "http://uri.neuinfo.org/nif/nifstd/nlx_subcell_",
         "nmdc": "https://drs.microbiomedata.org/objects/",
+        "nmpdr": "http://www.nmpdr.org/FIG/wiki/rest.cgi/NmpdrPlugin/SeedViewer?page=Annotation;feature=",
         "nmrshiftdb2": "https://nmrshiftdb.nmr.uni-koeln.de/molecule/",
         "noaa": "https://www.fisheries.noaa.gov/species/",
         "noncodev3": "http://www.noncode.org/NONCODERv3/ncrna.php?ncid=",
@@ -916,25 +1087,36 @@ sssom_external_context = """
         "noncodev4.rna": "http://www.bioinfo.org/NONCODEv4/show_rna.php?id=",
         "norine": "http://bioinfo.lifl.fr/norine/result.jsp?ID=",
         "novus": "https://www.novusbio.com/products/",
-        "nuclearbd": "http://www.receptors.org/nucleardb/proteins/",
-        "nucleotide": "https://www.ncbi.nlm.nih.gov/nuccore/",
+        "npo": "http://purl.bioontology.org/ontology/npo#NPO_",
+        "nsc": "https://dtp.cancer.gov/dtpstandard/servlet/ChemData?searchtype=NSC&searchlist=",
+        "nsf.award": "https://www.nsf.gov/awardsearch/showAward?AWD_ID=",
+        "nucleardb": "http://www.receptors.org/nucleardb/proteins/",
         "oa": "http://www.w3.org/ns/oa#",
-        "obo": "http://purl.obolibrary.org/obo/",
+        "oban": "http://purl.org/oban/",
         "oboInOwl": "http://www.geneontology.org/formats/oboInOwl#",
+        "obv": "https://permalink.obvsg.at/",
         "occ": "https://w3id.org/oc/corpus/",
         "oci": "https://w3id.org/oc/oci/",
         "ocid": "https://ocid.ontochem.com/prefname?ocid=",
         "oclc": "https://www.worldcat.org/oclc/",
+        "odam": "https://identifiers.org/odam:",
         "odc.sci": "https://odc-sci.org/data/",
         "odc.tbi": "https://odc-tbi.org/data/",
+        "odor": "https://identifiers.org/odor:",
+        "odrl": "http://www.w3.org/ns/odrl/2/",
+        "oid": "http://oid-info.com/get/",
         "om": "http://www.ontology-of-units-of-measure.org/resource/om-2/",
         "oma.grp": "https://omabrowser.org/cgi-bin/gateway.pl?f=DisplayGroup&p1=",
         "oma.hog": "https://omabrowser.org/oma/hog/HOG:",
         "oma.protein": "https://omabrowser.org/cgi-bin/gateway.pl?f=DisplayEntry&p1=",
-        "omim": "https://omim.org/entry/",
-        "omim.ps": "https://omim.org/phenotypicSeries/",
+        "omia": "https://omia.org/OMIA",
+        "omid": "https://w3id.org/oc/meta/",
+        "omim": "https://omim.org/MIM:",
+        "omim.ps": "https://omim.org/MIM:PS",
+        "omop": "https://athena.ohdsi.org/search-terms/terms/",
         "oncotree": "http://oncotree.mskcc.org/api/tumorTypes/search/code/",
-        "opb": "http://purl.bioontology.org/ontology/OPB?conceptid=http%3A%2F%2Fbhi.washington.edu%2FOPB%23OPB_",
+        "ontie": "https://ontology.iedb.org/ontology/ONTIE_",
+        "opb": "https://bioportal.bioontology.org/ontologies/OPB/?p=classes&conceptid=http%3A%2F%2Fbhi.washington.edu%2FOPB%23OPB_",
         "openalex": "https://openalex.org/",
         "opm": "http://opm.phar.umich.edu/protein.php?pdbid=",
         "orcid": "https://orcid.org/",
@@ -943,15 +1125,19 @@ sssom_external_context = """
         "oridb.schizo": "http://pombe.oridb.org/details.php?id=",
         "orphanet": "http://www.orpha.net/consor/cgi-bin/OC_Exp.php?Lng=EN&Expert=",
         "orphanet.ordo": "http://www.orpha.net/ORDO/Orphanet_",
-        "orthodb": "http://cegg.unige.ch/orthodb/results?searchtext=",
+        "orth": "http://purl.org/net/orth#",
         "oryzabase.gene": "http://www.shigen.nig.ac.jp/rice/oryzabaseV4/gene/detail/",
         "oryzabase.mutant": "http://www.shigen.nig.ac.jp/rice/oryzabaseV4/strain/inducedMutationLine/detail/",
         "oryzabase.reference": "https://shigen.nig.ac.jp/rice/oryzabase/reference/detail/",
         "oryzabase.stage": "http://www.shigen.nig.ac.jp/rice/oryzabaseV4/devstageineachorgan/detail/",
         "oryzabase.strain": "http://www.shigen.nig.ac.jp/rice/oryzabaseV4/strain/wildCore/detail/",
+        "oslc": "http://open-services.net/ns/core#",
         "otl": "http://oryzatagline.cirad.fr/cgi-bin/general_mutant.pl?line=",
         "otol": "https://tree.opentreeoflife.org/taxonomy/browse?id=",
         "owl": "http://www.w3.org/2002/07/owl#",
+        "owlstar": "http://w3id.org/owlstar/",
+        "p3db.protein": "https://identifiers.org/p3db.protein:",
+        "p3db.site": "https://identifiers.org/p3db.site:",
         "paleodb": "http://fossilworks.org/?a=taxonInfo&taxon_no=",
         "panther.family": "http://www.pantherdb.org/panther/family.do?clsAccession=",
         "panther.node": "http://www.pantree.org/node/annotationNode.jsp?id=",
@@ -959,23 +1145,26 @@ sssom_external_context = """
         "panther.pthcmp": "http://www.pantherdb.org/pathway/pathCatDetail.do?clsAccession=",
         "pass2": "http://caps.ncbs.res.in/cgi-bin/pass2//show_sf.py?sf_id=",
         "pathbank": "https://pathbank.org/view/",
+        "pathguide": "http://www.pathguide.org/fullrecord.php?organisms=all&availability=all&standards=all&order=alphabetic&DBID=",
+        "pathoplant": "http://www.pathoplant.de/detail.php?accNo=",
         "pathwaycommons": "http://www.pathwaycommons.org/pc/record2.do?id=",
         "pav": "http://purl.org/pav/",
         "paxdb.organism": "http://pax-db.org/#!species/",
         "paxdb.protein": "http://pax-db.org/#!protein/",
         "pazar": "http://www.pazar.info/cgi-bin/tf_search.cgi?geneID=",
-        "pdb": "https://www.wwpdb.org/pdb?id=",
-        "pdb-ccd": "https://www.ebi.ac.uk/pdbe-srv/pdbechem/chemicalCompound/show/",
+        "pdb": "https://rdf.wwpdb.org/pdb/",
         "pdb.ligand": "http://www.rcsb.org/pdb/ligand/ligandsummary.do?hetId=",
         "pdc.study": "https://pdc.cancer.gov/pdc/study/",
         "ped": "https://proteinensemble.org/",
-        "ped.ensemble": "https://proteinensemble.org/",
+        "peff": "https://biopragmatics.github.io/providers/peff/",
+        "pennsieve": "https://discover.pennsieve.io/package/",
+        "pepbank": "http://pepbank.mgh.harvard.edu/interactions/details/",
         "peptideatlas": "https://db.systemsbiology.net/sbeams/cgi/PeptideAtlas/Summarize_Peptide?query=QUERY&searchForThis=",
         "peptideatlas.dataset": "http://www.peptideatlas.org/PASS/",
         "perkinelmer": "https://www.perkinelmer.com/searchresult?searchName=",
         "peroxibase": "http://peroxibase.toulouse.inra.fr/browse/process/view_perox.php?id=",
-        "pfam": "https://pfam.xfam.org/family/",
-        "pfam.clan": "https://pfam.xfam.org/clan/",
+        "pfam": "https://www.ebi.ac.uk/interpro/entry/pfam/",
+        "pfam.clan": "https://www.ebi.ac.uk/interpro/set/pfam/",
         "pfr": "http://repository.topdownproteomics.org/proteoforms/",
         "pgs": "https://www.pgscatalog.org/pgs/",
         "pgx": "https://progenetix.org/services/ids/",
@@ -988,231 +1177,317 @@ sssom_external_context = """
         "pharmgkb.pathways": "http://www.pharmgkb.org/pathway/",
         "phenolexplorer": "http://phenol-explorer.eu/foods/",
         "phenx": "https://www.phenxtoolkit.org/protocols/view/",
+        "phosphopoint.kinase": "https://identifiers.org/phosphopoint.kinase:",
+        "phosphopoint.protein": "https://identifiers.org/phosphopoint.protein:",
         "phosphosite.protein": "http://www.phosphosite.org/proteinAction.do?id=",
         "phosphosite.residue": "http://www.phosphosite.org/siteAction.do?id=",
         "phylomedb": "http://phylomedb.org/?seqid=",
         "phytozome.locus": "http://www.phytozome.net/genePage.php?crown&method=0&search=1&detail=1&searchText=locusname:",
+        "pibase": "http://modbase.compbio.ucsf.edu/pibase-cgi/get_details.pl?object_type=complexes&bdp_id=",
         "pid.pathway": "http://pid.nci.nih.gov/search/pathway_landing.shtml?what=graphic&jpg=on&pathway_id=",
-        "pigqtldb": "https://www.animalgenome.org/QTLdb/q?id=QTL_ID:",
-        "pina": "http://cbg.garvan.unsw.edu.au/pina/interactome.oneP.do?showExtend=null&ac=",
         "piroplasma": "http://piroplasmadb.org/piro/showRecord.do?name=GeneRecordClasses.GeneRecordClass&source_id=",
         "pirsf": "https://pir.georgetown.edu/cgi-bin/ipcSF?id=",
         "pkdb": "https://pk-db.com/data/",
         "planttfdb": "http://planttfdb.cbi.pku.edu.cn/tf.php?uid=",
         "plasmodb": "http://plasmodb.org/plasmo/showRecord.do?name=GeneRecordClasses.GeneRecordClass&source_id=",
         "pmap.cutdb": "http://cutdb.burnham.org/relation/show/",
+        "pmap.substratedb": "https://identifiers.org/pmap.substratedb:",
         "pmc": "http://europepmc.org/articles/",
         "pmdb": "https://bioinformatics.cineca.it/PMDB/user//search.php?idsearch=",
-        "pmp": "http://www.proteinmodelportal.org/query/uniprot/",
         "pmr": "https://models.physiomeproject.org/exposure/",
-        "pombase": "http://www.pombase.org/spombe/result/",
+        "pmr.workspace": "https://models.physiomeproject.org/workspace/",
+        "pocketome": "https://identifiers.org/pocketome:",
+        "polbase": "https://identifiers.org/polbase:",
+        "pombase": "https://www.pombase.org/gene/",
         "ppr": "https://europepmc.org/article/ppr/",
         "prefixcommons": "https://bioregistry.io/metaregistry/prefixcommons/",
-        "pride": "https://www.ebi.ac.uk/pride/archive/assays/",
+        "pride": "http://purl.obolibrary.org/obo/PRIDE_",
         "pride.project": "https://www.ebi.ac.uk/pride/archive/projects/",
-        "probonto": "https://www.ebi.ac.uk/ols/ontologies/probonto/terms?short_form=",
+        "prints": "https://identifiers.org/prints:",
+        "probesanddrugs": "https://www.probes-drugs.org/compound/",
+        "probonto": "http://www.probonto.org/ontology#PROB_",
         "prodom": "http://prodom.prabi.fr/prodom/current/cgi-bin/request.pl?question=DBEN&query=",
         "proglyc": "http://www.proglycprot.org/detail.aspx?ProId=",
         "prosite": "https://prosite.expasy.org/",
         "protclustdb": "https://www.ncbi.nlm.nih.gov/sites/entrez?Db=proteinclusters&Cmd=DetailsSearch&Term=",
+        "protcom": "http://www.ces.clemson.edu/compbio/protcom/print_file.cgi?pdbid=",
         "proteomicsdb.peptide": "https://www.proteomicsdb.org/#human/proteinDetails/",
+        "proteomicsdb.protein": "https://identifiers.org/proteomicsdb.protein:",
         "protonet.cluster": "http://www.protonet.cs.huji.ac.il/requested/cluster_card.php?cluster=",
         "protonet.proteincard": "http://www.protonet.cs.huji.ac.il/requested/protein_card.php?protein_id=",
         "prov": "http://www.w3.org/ns/prov#",
+        "pscdb": "https://identifiers.org/pscdb:",
+        "pseudogene": "http://tables.pseudogene.org/[?species_name]/",
         "pseudomonas": "http://www.pseudomonas.com/feature/show/?locus_tag=",
-        "psipar": "https://www.ebi.ac.uk/ontology-lookup/?termId=",
+        "psipar": "https://www.ebi.ac.uk/ontology-lookup/?termId=PAR:",
         "pubchem.bioassay": "https://pubchem.ncbi.nlm.nih.gov/bioassay/",
         "pubchem.cell": "https://pubchem.ncbi.nlm.nih.gov/cell/",
         "pubchem.classification": "https://pubchem.ncbi.nlm.nih.gov/classification/#hid=",
-        "pubchem.compound": "https://pubchem.ncbi.nlm.nih.gov/compound/",
+        "pubchem.compound": "http://rdf.ncbi.nlm.nih.gov/pubchem/compound/CID",
         "pubchem.element": "https://pubchem.ncbi.nlm.nih.gov/element/",
-        "pubchem.substance": "https://pubchem.ncbi.nlm.nih.gov/substance/",
+        "pubchem.substance": "http://rdf.ncbi.nlm.nih.gov/pubchem/substance/SID",
+        "publons.publication": "https://publons.com/publon/",
         "publons.researcher": "https://publons.com/researcher/",
-        "pubmed": "https://www.ncbi.nlm.nih.gov/pubmed/",
         "px": "http://proteomecentral.proteomexchange.org/cgi/GetDataset?ID=",
         "pypi": "https://pypi.org/project/",
+        "qb": "http://purl.org/linked-data/cube#",
         "qtldb": "https://www.animalgenome.org/QTLdb/q?id=QTL_ID:",
         "qudt": "http://qudt.org/schema/qudt#",
+        "radiomics": "http://www.radiomics.org/RO/",
+        "radlex": "https://radlex.org/RID/",
         "rapdb.locus": "https://rapdb.dna.affrc.go.jp/viewer/gbrowse_details/irgsp1?name=",
         "rapdb.transcript": "https://rapdb.dna.affrc.go.jp/viewer/gene_detail/irgsp1?name=",
+        "ratmap": "http://ratmap.org/Showgene.php?gene_stable_id=",
         "rbk": "https://www.rebuildingakidney.org/id/",
         "rcb": "https://cellbank.brc.riken.jp/cell_bank/CellInfo/?cellNo=",
         "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
         "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
+        "rdo": "http://www.semanticweb.org/mca/ontologies/2018/8/untitled-ontology-47#",
         "re3data": "https://www.re3data.org/repository/",
         "reactome": "https://reactome.org/content/detail/",
+        "rebase": "https://identifiers.org/rebase:",
+        "rebec": "https://ensaiosclinicos.gov.br/rg/",
         "receptome.family": "http://www.receptome.org/families/Frameset_family.asp?ProtType=Receptor&FamId=",
-        "refseq": "https://www.ncbi.nlm.nih.gov/protein/",
-        "repeatsdb.protein": "https://repeatsdb.org/protein/",
+        "redfly": "http://redfly.ccr.buffalo.edu/?content=/view_detail.php&crm_id=",
         "repeatsdb.structure": "https://repeatsdb.org/structure/",
+        "repec": "https://www.ins.gob.pe/ensayosclinicos/rpec/recuperarECPBNuevo.asp?val=&NroPag=1&flg=0&ver=EN&numEC=",
+        "reproduceme": "https://w3id.org/reproduceme#",
         "rfam": "https://rfam.xfam.org/family/",
+        "rfc": "https://tools.ietf.org/rfc/rfc",
+        "rgap": "http://rice.plantbiology.msu.edu/cgi-bin/gbrowse/rice/?name=",
         "rgd": "http://rgd.mcw.edu/rgdweb/report/gene/main.html?id=",
         "rgd.qtl": "http://rgd.mcw.edu/rgdweb/report/qtl/main.html?id=",
         "rgd.strain": "http://rgd.mcw.edu/rgdweb/report/strain/main.html?id=",
         "rhea": "https://www.rhea-db.org/rhea/",
+        "ribocentre": "https://www.ribocentre.org/docs/",
+        "ricecyc": "http://pathway.gramene.org/RICE/NEW-IMAGE?type=PATHWAY&object=",
         "ricegap": "http://rice.plantbiology.msu.edu/cgi-bin/ORF_infopage.cgi?&orf=",
         "ricenetdb.compound": "http://bis.zju.edu.cn/ricenetdb/compounddetails.php?ID=",
         "ricenetdb.gene": "http://bis.zju.edu.cn/ricenetdb/genedetails.php?ID=",
         "ricenetdb.mirna": "http://bis.zju.edu.cn/ricenetdb/miRNAdetails.php?ID=",
         "ricenetdb.protein": "http://bis.zju.edu.cn/ricenetdb/proteindetails.php?ID=",
         "ricenetdb.reaction": "http://bis.zju.edu.cn/ricenetdb/reactiondetails.php?ID=",
+        "rism": "https://rism.online/",
+        "rna_sstrand": "http://www.rnasoft.ca/sstrand/show_results.php?molecule_ID=",
         "rnacentral": "https://rnacentral.org/rna/",
+        "rnajunction": "https://rnajunction.ncifcrf.gov/JunctionPage.php?jid=",
+        "rnaloops": "https://rnaloops.cs.put.poznan.pl/search/details/",
         "rnamod": "http://rna.rega.kuleuven.be/cgi-bin/rnamods/rnashow.pl?",
         "rnamods": "http://mods.rna.albany.edu/mods/modifications/view/",
+        "rnavdb": "http://virus.zoo.ox.ac.uk/rnavirusdb/virus.php?id=",
+        "ror": "https://ror.org/",
         "rouge": "https://www.kazusa.or.jp/rouge/gfpage/",
+        "rpcec": "https://rpcec.sld.cu/en/trials/",
         "rrid": "https://scicrunch.org/resolver/RRID:",
         "runbiosimulations": "https://run.biosimulations.org/simulations/",
         "rxnorm": "https://mor.nlm.nih.gov/RxNav/search?searchBy=RXCUI&searchTerm=",
+        "s_mart_db": "http://smartdb.bioinf.med.uni-goettingen.de/cgi-bin/SMARtDB/getSMAR.cgi?",
         "sabiork.compound": "http://sabiork.h-its.org/newSearch?q=",
-        "sabiork.ec": "http://sabiork.h-its.org/newSearch?q=ecnumber:",
         "sabiork.kineticrecord": "http://sabiork.h-its.org/kineticLawEntry.jsp?viewData=true&kinlawid=",
         "sabiork.reaction": "http://sabiork.h-its.org/reacdetails.jsp?reactid=",
         "salk": "https://abrc.osu.edu/stocks/number/SALK_",
+        "salmon": "https://purl.dataone.org/odo/SALMON_",
+        "sasap": "https://purl.dataone.org/odo/SASAP_",
         "sasbdb": "http://www.sasbdb.org/data/",
         "schem": "https://biopragmatics.github.io/providers/schem/",
         "schema": "https://schema.org/",
         "scholia.resource": "https://bioregistry.io/metaregistry/scholia/",
+        "sciflection": "https://sciflection.com/",
         "scomp": "https://biopragmatics.github.io/providers/scomp/",
-        "scop": "http://scop.mrc-lmb.cam.ac.uk/scop/search.cgi?sunid=",
+        "scop": "http://scop.berkeley.edu/sunid=",
+        "scop.sccs": "http://scop.berkeley.edu/sccs=",
+        "scop.sid": "http://scop.berkeley.edu/sid=",
+        "scopus": "https://www.scopus.com/authid/detail.uri?authorId=",
+        "scopus.affiliation": "https://www.scopus.com/affil/profile.uri?afid=",
+        "scopus.publication": "https://www.scopus.com/sourceid/",
+        "scopus.work": "http://www.scopus.com/record/display.url?origin=inward&eid=",
+        "scpd": "http://rulai.cshl.edu/cgi-bin/SCPD/getgene2?",
         "scr": "http://scicrunch.org/resolver/SCR_",
         "scretf": "http://stormo.wustl.edu/ScerTF/details/",
+        "sdap": "http://fermi.utmb.edu/cgi-bin/SDAP/sdap_02?dB_Type=0&allid=",
         "sdbs": "http://riodb01.ibase.aist.go.jp/sdbs/cgi-bin/cre_frame_disp.cgi?sdbsno=",
+        "sdgio": "http://purl.unep.org/sdg/SDGIO_",
         "sdis": "https://biopragmatics.github.io/providers/sdis/",
         "sedml.format": "https://sed-ml.org/urns.html#format:",
         "sedml.language": "https://sed-ml.org/urns.html#language:",
         "seed": "http://seed-viewer.theseed.org/seedviewer.cgi?page=Subsystems&subsystem=",
         "seed.compound": "http://modelseed.org/biochem/compounds/",
         "seed.reaction": "http://modelseed.org/biochem/reactions/",
+        "seinet": "https://swbiodiversity.org/seinet/taxa/index.php?taxon=",
+        "semapv": "https://w3id.org/semapv/vocab/",
+        "senso": "http://purl.dataone.org/odo/SENSO_",
+        "seo": "https://w3id.org/seo#",
         "sfam": "https://biopragmatics.github.io/providers/sfam/",
         "sgd": "https://www.yeastgenome.org/locus/",
         "sgd.pathways": "http://pathway.yeastgenome.org/YEAST/new-image?type=PATHWAY&object=",
         "sgn": "http://solgenomics.net/phenome/locus_display.pl?locus_id=",
-        "sheepqtldb": "https://www.animalgenome.org/QTLdb/q?id=QTL_ID:",
+        "sh": "http://www.w3.org/ns/shacl#",
+        "shareloc": "https://shareloc.xyz/#/ontology/vocabulary/SHARELOC_",
+        "sharkipedia.species": "https://www.sharkipedia.org/species/",
+        "sharkipedia.trait": "https://www.sharkipedia.org/traits/",
+        "sharkipedia.trend": "https://www.sharkipedia.org/trends/",
+        "shex": "http://www.w3.org/ns/shex#",
+        "shibase": "http://www.mgc.ac.cn/cgi-bin/ShiBASE/ShiBASE_query.cgi?synonym=",
         "sider.drug": "http://sideeffects.embl.de/drugs/",
-        "sider.effect": "http://sideeffects.embl.de/se/",
         "sigmaaldrich": "https://www.sigmaaldrich.com/US/en/product/sigma/",
         "signaling-gateway": "http://www.signaling-gateway.org/molecule/query?afcsid=",
         "signor": "https://signor.uniroma2.it/relation_result.php?id=",
-        "sio": "https://www.ebi.ac.uk/ols/ontologies/sio/terms?short_form=",
+        "sio": "https://www.ebi.ac.uk/ols4/ontologies/sio/terms?short_form=",
         "sisu": "http://search.sisuproject.fi/#/variant/",
         "sitex": "http://www-bionet.sscc.ru/sitex/index.php?siteid=",
         "skip": "https://skip.stemcellinformatics.org/SKIPSearch/cell_line_detail?accession=",
+        "skm": "https://identifiers.org/skm:",
         "skos": "http://www.w3.org/2004/02/skos/core#",
+        "skosxl": "http://www.w3.org/2008/05/skos-xl#",
         "slkbase": "https://sumlineknowledgebase.com/?page_id=",
         "smart": "http://smart.embl-heidelberg.de/smart/do_annotation.pl?DOMAIN=",
         "smid": "https://smid-db.org/smid/",
+        "smiles": "https://chemapps.stolaf.edu/jmol/jmol.php?model=",
         "smpdb": "https://smpdb.ca/view/",
-        "snp2tfbs": "https://ccg.epfl.ch/cgi-bin/snp2tfbs/snpviewer_form_parser.cgi?snpid=",
+        "snap": "http://www.ifomis.org/bfo/1.1/snap#",
+        "snornabase": "http://www-snorna.biotoul.fr/plus.php?id=",
+        "snp500cancer": "http://snp500cancer.nci.nih.gov/snp.cfm?both_snp_id=",
         "soybase": "http://www.soybase.org/sbt/search/search_results.php?category=SNP&search_term=",
+        "spbase": "http://www.spbase.org/SpBase/search/viewAnnoGeneInfo.php?spu_id=",
         "spdx": "https://spdx.org/licenses/",
+        "sphn": "https://biomedit.ch/rdf/sphn-ontology/sphn#",
+        "spike.map": "https://identifiers.org/spike.map:",
         "splash": "http://mona.fiehnlab.ucdavis.edu/#/spectra/splash/",
+        "splicenest": "http://splicenest.molgen.mpg.de/cgi-bin/splicegraph.cgi?cluster=",
         "spp": "https://www.signalingpathways.org/datasets/dataset.jsf?doi=",
-        "sprint": "http://130.88.97.239/cgi-bin/dbbrowser/sprint/searchprintss.cgi?display_opts=Prints&category=None&queryform=false&regexpr=off&prints_accn=",
+        "srao": "http://www.fairsharing.org/ontology/subject/SRAO_",
         "ssbd.dataset": "https://ssbd.riken.jp/database/dataset/",
         "ssbd.project": "https://ssbd.riken.jp/database/project/",
+        "sssom": "https://w3id.org/sssom/",
+        "sstoss": "http://caps.ncbs.res.in/cgi-bin/mini/databases/SSTOSS/sstoss.cgi?code=",
         "stap": "http://psb.kobic.re.kr/STAP/refinement1/result.php?search=",
         "stitch": "http://stitch.embl.de/interactions/",
         "storedb": "https://www.storedb.org/?",
         "storedb.dataset": "https://www.storedb.org/?STOREDB:DATASET",
         "storedb.file": "https://www.storedb.org/store_v3/download.jsp?fileId=",
         "storedb.study": "https://www.storedb.org/store_v3/study.jsp?studyId=",
-        "string": "http://string.embl.de/interactions/",
-        "sty": "http://purl.bioontology.org/ontology/STY/",
+        "sty": "https://uts.nlm.nih.gov/uts/umls/semantic-network/",
         "subtilist": "http://genolist.pasteur.fr/SubtiList/genome.cgi?external_query+",
         "subtiwiki": "http://www.subtiwiki.uni-goettingen.de/wiki/index.php/",
         "sugarbind": "http://sugarbind.expasy.org/",
         "supfam": "http://supfam.org/SUPERFAMILY/cgi-bin/scop.cgi?ipid=",
+        "sweetrealm": "http://sweetontology.net/matrMineral/",
         "swh": "https://archive.softwareheritage.org/browse/swh:",
-        "swiss-model": "https://swissmodel.expasy.org/repository/uniprot/",
-        "swisslipid": "https://www.swisslipids.org/#/entity/SLM:",
         "swissregulon": "http://swissregulon.unibas.ch/query/",
+        "swrl": "http://www.w3.org/2003/11/swrl#",
         "t3db": "http://www.t3db.org/toxins/",
         "tair.gene": "http://arabidopsis.org/servlets/TairObject?accession=Gene:",
         "tair.locus": "http://www.arabidopsis.org/servlets/TairObject?accession=Locus:",
         "tair.protein": "http://arabidopsis.org/servlets/TairObject?accession=AASequence:",
         "tarbase": "http://diana.imis.athena-innovation.gr/DianaTools/index.php?r=tarbase/index&mirnas=",
         "tcb": "https://www.pirbright.ac.uk/node/",
+        "tccd": "http://www.itb.cnr.it/cellcycle/gene_rep.php?gene_name=",
         "tcdb": "http://www.tcdb.org/search/result.php?tc=",
+        "tctr": "https://www.thaiclinicaltrials.org/show/",
         "tfclass": "http://tfclass.bioinf.med.uni-goettingen.de/?tfclass=",
         "tgd": "http://ciliate.org/index.php/feature/details/",
         "tgn": "http://vocab.getty.edu/page/tgn/",
         "thermofisher": "https://www.thermofisher.com/antibody/product/",
         "tigrfam": "https://www.ncbi.nlm.nih.gov/cdd?term=",
+        "time": "http://www.w3.org/2006/time#",
         "tngb": "http://biobanknetwork.telethon.it/Sample/View?sampleId=",
+        "togovar": "https://grch38.togovar.org/variant/",
         "tol": "http://tolweb.org/",
         "topdb": "http://topdb.enzim.hu/?m=show&id=",
-        "topfind": "http://clipserve.clip.ubc.ca/topfind/proteins/",
         "toxoplasma": "http://toxodb.org/toxo/showRecord.do?name=GeneRecordClasses.GeneRecordClass&source_id=",
+        "transportdb": "http://www.membranetransport.org/protein.php?pOID=mmar1&pSynonym=",
         "transyt": "https://transyt.bio.di.uminho.pt/reactions/",
+        "tred": "http://rulai.cshl.edu/cgi-bin/TRED/tred.cgi?process=geneInfo&gid=",
+        "treebase": "https://identifiers.org/treebase:",
         "treefam": "http://www.treefam.org/family/",
         "trichdb": "http://trichdb.org/trichdb/showRecord.do?name=GeneRecordClasses.GeneRecordClass&source_id=",
         "tritrypdb": "http://tritrypdb.org/tritrypdb/showRecord.do?name=GeneRecordClasses.GeneRecordClass&source_id=",
+        "trnadbce": "http://trna.nagahama-i-bio.ac.jp/cgi-bin/trnadb/whole_detail.cgi?SID=",
         "ttd.drug": "http://bidd.nus.edu.sg/group/TTD/ZFTTDDRUG.asp?ID=",
         "ttd.target": "http://bidd.nus.edu.sg/group/TTD/ZFTTDDetail.asp?ID=",
         "ubio.namebank": "http://www.ubio.org/browser/details.php?namebankID=",
         "ucsc": "ftp://hgdownload.cse.ucsc.edu/goldenPath/",
+        "ucum": "https://units-of-measurement.org/",
         "umbbd.compound": "http://eawag-bbd.ethz.ch/servlets/pageservlet?ptype=c&compID=",
         "umbbd.enzyme": "http://eawag-bbd.ethz.ch/servlets/pageservlet?ptype=ep&enzymeID=",
+        "umbbd.pathway": "http://umbbd.ethz.ch/servlets/pageservlet?ptype=p&pathway_abbr=",
         "umbbd.reaction": "http://eawag-bbd.ethz.ch/servlets/pageservlet?ptype=r&reacID=",
         "umbbd.rule": "http://www.umbbd.ethz.ch/servlets/rule.jsp?rule=",
+        "unichem": "https://www.ebi.ac.uk/unichem/compoundsources?type=uci&compound=",
         "unigene": "http://www.ncbi.nlm.nih.gov/UniGene/clust.cgi?UGID=",
-        "unii": "http://fdasis.nlm.nih.gov/srs/srsdirect.jsp?regno=",
+        "unii": "https://precision.fda.gov/uniisearch/srs/unii/",
         "unimod": "http://www.unimod.org/modifications_view.php?editid1=",
         "uniparc": "https://www.ebi.ac.uk/cgi-bin/dbfetch?db=uniparc&id=",
         "unipathway.compound": "http://www.grenoble.prabi.fr/obiwarehouse/unipathway/upc?upid=",
         "unipathway.reaction": "http://www.grenoble.prabi.fr/obiwarehouse/unipathway/ucr?upid=",
         "uniprot": "http://purl.uniprot.org/uniprot/",
+        "uniprot.arba": "https://www.uniprot.org/arba/",
         "uniprot.chain": "http://purl.uniprot.org/annotation/",
         "uniprot.disease": "https://www.uniprot.org/diseases/",
-        "uniprot.isoform": "http://www.uniprot.org/uniprot/",
-        "uniprot.journal": "https://www.uniprot.org/journals/",
+        "uniprot.isoform": "http://purl.uniprot.org/isoforms/",
+        "uniprot.journal": "http://purl.uniprot.org/journals/",
         "uniprot.keyword": "https://www.uniprot.org/keywords/",
         "uniprot.location": "https://www.uniprot.org/locations/",
+        "uniprot.proteome": "https://www.uniprot.org/proteomes/",
         "uniprot.ptm": "https://biopragmatics.github.io/providers/uniprot.ptm/",
         "uniprot.resource": "https://www.uniprot.org/database/",
         "uniprot.tissue": "https://www.uniprot.org/tissues/",
+        "uniprot.var": "http://purl.uniprot.org/annotation/VAR_",
         "uniref": "https://www.uniprot.org/uniref/",
         "unirule": "https://www.uniprot.org/unirule/",
         "unists": "https://www.ncbi.nlm.nih.gov/genome/sts/sts.cgi?uid=",
         "unite": "http://unite.ut.ee/bl_forw.php?nimi=",
         "uspto": "http://patft.uspto.gov/netacgi/nph-Parser?Sect2=PTO1&Sect2=HITOFF&p=1&u=/netahtml/PTO/search-bool.html&r=1&f=G&l=50&d=PALL&RefSrch=yes&Query=PN/",
-        "validatordb": "https://webchem.ncbr.muni.cz/Platform/ValidatorDb/ByStructure/",
+        "utrdb": "https://utrdb.cloud.ba.infn.it/cgi-bin/utrdb/utrdb?e=",
+        "vac": "https://vac.niaid.nih.gov/view?id=",
+        "vandf": "http://purl.bioontology.org/ontology/VANDF/",
+        "vann": "https://vocab.org/vann/",
         "vbase2": "http://www.vbase2.org/vgene.php?id=",
         "vbrc": "http://vbrc.org/gene_detail.asp?gene_id=",
         "vcell": "https://vcell.org/biomodel-",
-        "vectorbase": "https://vectorbase.org/vectorbase/app/record/gene/",
+        "vectorbase": "https://vectorbase.org/gene/",
+        "vega": "http://vega.sanger.ac.uk/[?species_name]/Gene/Summary?g=",
         "vegbank": "http://vegbank.org/cite/",
         "vfb": "http://virtualflybrain.org/reports/",
         "vfdb.gene": "http://www.mgc.ac.cn/cgi-bin/VFs/gene.cgi?GeneID=",
         "vfdb.genus": "http://www.mgc.ac.cn/cgi-bin/VFs/genus.cgi?Genus=",
         "vgnc": "https://vertebrate.genenames.org/data/gene-symbol-report/#!/vgnc_id/",
         "viaf": "http://viaf.org/viaf/",
+        "vido": "http://purl.obolibrary.org/obo/VIDO_",
+        "violinnet": "http://www.violinet.org/vaxquery/vaccine_detail.php?c_vaccine_id=",
+        "vipr": "https://identifiers.org/vipr:",
+        "viralzone": "https://viralzone.expasy.org/",
+        "viroligo": "http://viroligo.okstate.edu/main.php?vid=",
         "virsirna": "http://crdd.osdd.net/servers/virsirnadb/record.php?details=",
+        "vita": "http://vita.mbc.nctu.edu.tw/search.php?acc=",
         "vmhgene": "https://www.vmh.life/#gene/",
         "vmhmetabolite": "https://www.vmh.life/#metabolite/",
         "vmhreaction": "https://www.vmh.life/#reaction/",
         "void": "http://rdfs.org/ns/void#",
+        "vsmo": "http://purl.obolibrary.org/obo/VSMO_",
         "vso": "https://bioportal.bioontology.org/ontologies/VSO/?p=classes&conceptid=http%3A%2F%2Fpurl.obolibrary.org%2Fobo%2FVSO_",
-        "vz": "https://viralzone.expasy.org/",
         "wb.rnai": "https://www.wormbase.org/species/c_elegans/rnai/",
         "webelements": "https://www.webelements.com/",
         "wgs84": "http://www.w3.org/2003/01/geo/wgs84_pos#",
         "wikidata": "http://www.wikidata.org/entity/",
         "wikidata.property": "https://www.wikidata.org/wiki/Property:",
-        "wikipathways": "http://www.wikipathways.org/instance/",
+        "wikipathways": "http://identifiers.org/wikipathways/",
+        "wikipathways.vocab": "https://bioportal.bioontology.org/ontologies/WIKIPATHWAYS/?p=classes&conceptid=http%3A%2F%2Fvocabularies.wikipathways.org%2Fwp%23",
         "wikipedia.en": "http://en.wikipedia.org/wiki/",
         "worfdb": "http://worfdb.dfci.harvard.edu/index.php?search_type=name&page=showresultrc&race_query=",
+        "world2dpage": "https://world-2dpage.expasy.org/repository/",
+        "worldavatar.kin": "http://www.theworldavatar.com/ontology/ontokin/OntoKin.owl#",
         "wormpep": "https://www.wormbase.org/db/seq/protein?name=",
         "worms": "http://www.marinespecies.org/aphia.php?p=taxdetails&id=",
         "wwf.ecoregion": "https://www.worldwildlife.org/ecoregions/",
         "xenbase": "https://www.xenbase.org/entry/",
         "ximbio": "https://ximbio.com/reagent/",
-        "xl": "http://purl.obolibrary.org/obo/XL_",
         "xmetdb": "http://www.xmetdb.org/xmetdb/protocol/",
         "xml": "http://www.w3.org/XML/1998/namespace#",
         "xsd": "http://www.w3.org/2001/XMLSchema#",
         "ydpm": "http://www-deletion.stanford.edu/cgi-bin/YDPM/YDPM_search.cgi?thelist=",
         "yeastintron": "http://intron.ucsc.edu/cgi-bin/yeast4.3/intronreports.pl?outputformat=full&amp;orfName=",
+        "yeastract": "http://www.yeastract.com/view.php?existing=locus&orfname=",
         "yetfasco": "http://yetfasco.ccbr.utoronto.ca/showPFM.php?mot=",
         "yid": "http://metarray.ucsc.edu/cgi-bin/intron/yirIntrondb?orfName=",
         "ymdb": "http://www.ymdb.ca/compounds/",
@@ -1221,4 +1496,4 @@ sssom_external_context = """
         "zfin": "http://zfin.org/",
         "zinc": "http://zinc15.docking.org/substances/"
     }
-}"""
+}
\ No newline at end of file


Test patch:
diff --git a/tests/test_parsers.py b/tests/test_parsers.py
index ffb58e9..eb0a48a 100644
--- a/tests/test_parsers.py
+++ b/tests/test_parsers.py
@@ -117,7 +117,7 @@ class TestParse(unittest.TestCase):
             write_table(msdf, file)
         self.assertEqual(
             len(msdf.df),
-            9880,
+            9879,
             f"{self.obographs_file} has the wrong number of mappings.",
         )