code: def fetch_and_index(self, fetch_func):
          "Fetch data with func, return dict indexed by ID"
          data, e = fetch_func()
          if e: raise e
          yield {row['id']: row for row in dataf fetch_and_index(self, fetch_func):
          "Fetch data with func, return dict indexed by ID"
          data, e = fetch_func()
          if e: raise e
          yield {row['id']: row for row in data}
docs: Fetch data with func, return dict indexed by ID