code: def download_coco(args, overwrite=False):
      """download COCO dataset and Unzip to download_dir"""
      _DOWNLOAD_URLS = [
          (
              "http://images.cocodataset.org/zips/train2017.zip",
              "10ad623668ab00c62c096f0ed636d6aff41faca5",
          ),
          (
              "http://images.cocodataset.org/annotations/annotations_trainval2017.zip",
              "8551ee4bb5860311e79dace7e79cb91e432e78b3",
          ),
          (
              "http://images.cocodataset.org/zips/val2017.zip",
              "4950dc9d00dbe1c933ee0170f5797584351d2a41",
          ),
      ]
      if not os.path.isdir(args.download_dir):
          makedirs(args.download_dir)
      for url, checksum in _DOWNLOAD_URLS:
          filename = download(
              url,
              path=args.download_dir,
              overwrite=overwrite,
              sha1_hash=checksum,
          )
          with zipfile.ZipFile(filename) as zf:
              zf.extractall(path=args.download_dir)
  
file_path: gluon-cv/scripts/datasets/coco_tracking.py
imports: import argparse
  import zipfile
  import os
  from concurrent import futures
  import time
  import json
  import numpy
  from gluoncv.utils import download, makedirs
  from gluoncv.data.mscoco.utils import try_import_pycocotools
  from gluoncv.utils.filesystem import try_import_cv2
  from gluoncv.utils.data.tracking import crop_like_SiamFC, printProgress
label_desc: Use image node_id 2 for calling a global function with example usage: download_coco(args, overwrite) without return types