code: def download_and_extract_archive(
      url: str,
      download_root: str,
      extract_root: Optional[str] = None,
      filename: Optional[str] = None,
      md5: Optional[str] = None,
      remove_finished: bool = False,
  ) -> None:
      download_root = os.path.expanduser(download_root)
      if extract_root is None:
          extract_root = download_root
      if not filename:
          filename = os.path.basename(url)
  
      download_url(url, download_root, filename, md5)
  
      archive = os.path.join(download_root, filename)
      print("Extracting {} to {}".format(archive, extract_root))
      extract_archive(archive, extract_root, remove_finished)
  
file_path: vissl/vissl/utils/download.py
imports: import io
  import os
  import re
  import urllib
  import urllib.error
  import urllib.request
  from typing import Optional
  from urllib.parse import urlparse
  from torch.utils.model_zoo import tqdm
  from torchvision.datasets.utils import check_integrity, download_file_from_google_drive, extract_archive
  from vissl.utils.io import makedir
label_desc: Use image node_id 7 for calling a global function with example usage: download_and_extract_archive(url, download_root, extract_root, filename, md5, remove_finished) without return types