code: def _list(self, storage_path: str) -> Generator[str, None, None]:
      logger.debug(
          f"Listing keys in container: '{self.container_name}'"
          " with storage_path: '{storage_path}'"
      )
      container = self.client.get_container_client(self.container_name)
      prefix = urllib.parse.urlparse(storage_path).path.lstrip("/")
  
      blobs = container.list_blobs(name_starts_with=prefix)
      for blob in blobs:
          filepath, mtime = blob["name"], blob["last_modified"]
          prev_mtime = self._file_records.get(filepath)
  
          if prev_mtime is not None and prev_mtime >= mtime:
              continue
          self._file_records[filepath] = mtime
          yield filepath
  
file_path: determined/harness/determined/tensorboard/fetchers/azure.py
imports: import datetime
  import logging
  import os
  import urllib
  from typing import Any, Callable, Dict, Generator, List
  from .base import Fetcher
label_desc: Use image node_id 2 for calling the AzureFetcher obj's underlying member method code with example usage: obj._list(storage_path) without return types