code: def download_and_unzip(URL, file_name, local_cache_path="."):
      """Download a file if it is not already downloaded.
      :param URL: URL of the file to download
      :type URL: string
      :param file_name: what the downloaded file will be named
      :type file_name: string
      :param local_cache_path: where the file will be downloaded to and unzipped
      :type local_cache_path: string, optional
      :return: filepath to the downloaded file
      :rtype: string
      """
      zip_name = URL.split("/")[-1]
  
      if not os.path.exists(os.path.join(local_cache_path, file_name)):
          if not os.path.exists(
              os.path.join(local_cache_path, zip_name)
          ):
              try:
                  zip_path = maybe_download(
                      URL, zip_name, local_cache_path
                  )
              except Exception as e:
                  raise e
          extract_zip(zip_path, dest_path=local_cache_path)
      return os.path.join(local_cache_path, file_name)
  
file_path: interpret-text/notebooks/test_utils/utils_data_shared.py
imports: import os
  import requests
  from tqdm import tqdm
  import math
  import logging
  import zipfile
label_desc: Use image node_id 3 for calling a global function with example usage: download_and_unzip(URL, file_name, local_cache_path) and returns: os