def lookup(self, key): for prefix, local_key in iter_dotted_path_prefixes(key): bag = self.get_bag(prefix) if bag is not None: if local_key is None: return bag return resolve_dotted_value(bag, local_key)