'Args:
server_name_and_key_ids (list[(str, iterable[str])]):
list of (server_name, iterable[key_id]) tuples to fetch keys for
Returns:
Deferred: resolves to dict[str, dict[str, VerifyKey]]: map from
server_name -> key_id -> VerifyKey'

@defer.inlineCallbacks
def get_keys_from_store(self, server_name_and_key_ids):

    res = (yield preserve_context_over_deferred(defer.gatherResults([preserve_fn(self.store.get_server_verify_keys)(server_name, key_ids).addCallback((lambda ks, server: (server, ks)), server_name) for (server_name, key_ids) in server_name_and_key_ids], consumeErrors=True)).addErrback(unwrapFirstError))
    defer.returnValue(dict(res))
