code: def filename_to_url(filename: str, cache_dir: str = None) -> Tuple[str, str]:
      
      if cache_dir is None:
          cache_dir = CACHE_DIRECTORY
  
      cache_path = os.path.join(cache_dir, filename)
      if not os.path.exists(cache_path):
          raise FileNotFoundError("file {} not found".format(cache_path))
  
      meta_path = cache_path + '.json'
      if not os.path.exists(meta_path):
          raise FileNotFoundError("file {} not found".format(meta_path))
  
      with open(meta_path) as meta_file:
          metadata = json.load(meta_file)
      url = metadata['url']
      etag = metadata['etag']
  
      return url, etag
docs: Return the url and etag (which may be ``None``) stored for `filename`.
      Raise ``FileNotFoundError`` if `filename` or its stored metadata do not exist.