surrounding code seems to interleave indexing prov...
# general
d
surrounding code seems to interleave indexing providers & derefencing them, so they need to be topologically sorted