code: def download(
      experiment: Optional[str],
      include_forecasts: bool,
      evaluations_path: str,
  ):
      """
      Downloads either the evaluations of a single AWS Sagemaker experiment or
      the publicly available evaluations.
  
      The evaluations are downloaded to the provided directory.
      """
      target = Path(evaluations_path)
      target.mkdir(parents=True, exist_ok=True)
  
      if experiment is None:
          print("Downloading publicly available evaluations...")
          _download_public_evaluations(
              include_forecasts=include_forecasts,
              evaluations_path=target,
          )
      else:
          print(f"Downloading data from experiment '{experiment}'...")
          analysis = aws.Analysis(experiment)
          process_map(
              partial(
                  _move_job,
                  target=target,
                  include_forecasts=include_forecasts,
              ),
              load_jobs_from_analysis(analysis),
              chunksize=1,
          )
  
imports: import os
  import tarfile
  import tempfile
  from functools import partial
  from pathlib import Path
  from typing import Any, cast, Dict, List, Optional
  import botocore
  import click
  from gluonts.util import safe_extractall
  from tqdm.auto import tqdm
  from tqdm.contrib.concurrent import process_map
  from tsbench.analysis.utils import run_parallel
  from tsbench.constants import DEFAULT_EVALUATIONS_PATH
  from tsbench.evaluations import aws
  from tsbench.evaluations.aws import default_session
  from tsbench.evaluations.tracking.job import Job, load_jobs_from_analysis
  from ._main import evaluations
label_desc: Use image node_id 1 for calling a global function with example usage: download(experiment, include_forecasts, evaluations_path) without return types