parameters: (mode, destination, date, all_bots, default_user_id, user_id, limit)
docstring: Downloads bot replay files matching the designated requirements
      :param mode: Whether to download files matching a date or a user id
      :param destination: Where to download the files to
      :param date: Which date to download the files to, if there is a date
      :param all_bots: If dated, whether to download all bots (silver/gold)
      :param default_user_id: What is the user id of the user making the request
      :param user_id: What is the user id desired if any
      :param limit: How many replays to download (currently only in user mode)
      :return: Nothing
docstring_summary: Downloads bot replay files matching the designated requirements
      :param mode: Whether to download files matching a date or a user id
      :param destination: Where to download the files to
      :param date: Which date to download the files to, if there is a date
      :param all_bots: If dated, whether to download all bots (silver/gold)
      :param default_user_id: What is the user id of the user making the request
      :param user_id: What is the user id desired if any
      :param limit: How many replays to download (currently only in user mode)
      :return: Nothing
docstring_tokens: Downloads bot replay files matching the designated requirements : param mode : Whether to download files matching a date or a user id : param destination : Where to download the files to : param date : Which date to download the files to if there is a date : param all_bots : If dated whether to download all bots ( silver / gold ) : param default_user_id : What is the user id of the user making the request : param user_id : What is the user id desired if any : param limit : How many replays to download ( currently only in user mode ) : return : Nothing
function: def download(mode, destination, date, all_bots, default_user_id, user_id, limit):
      """
      Downloads bot replay files matching the designated requirements
      :param mode: Whether to download files matching a date or a user id
      :param destination: Where to download the files to
      :param date: Which date to download the files to, if there is a date
      :param all_bots: If dated, whether to download all bots (silver/gold)
      :param default_user_id: What is the user id of the user making the request
      :param user_id: What is the user id desired if any
      :param limit: How many replays to download (currently only in user mode)
      :return: Nothing
      """
      print('Downloading game files')
      if mode == client.REPLAY_MODE_DATE:
          if not _valid_date(date):
              raise ValueError("Date must match format YYYYMMDD")
          DatedGameDownloader(destination, date, all_bots).get_objects()
      elif mode == client.REPLAY_MODE_USER:
          if not (default_user_id or user_id):
              raise ValueError("Cannot run default mode without authenticating .Please run `client.py --auth` first.")
          UserGameDownloader(destination, default_user_id if not user_id else user_id, limit).get_objects()
      print('Finished writing files to desired location')
function_tokens: def download ( mode , destination , date , all_bots , default_user_id , user_id , limit ) : print ( 'Downloading game files' ) if mode == client . REPLAY_MODE_DATE : if not _valid_date ( date ) : raise ValueError ( "Date must match format YYYYMMDD" ) DatedGameDownloader ( destination , date , all_bots ) . get_objects ( ) elif mode == client . REPLAY_MODE_USER : if not ( default_user_id or user_id ) : raise ValueError ( "Cannot run default mode without authenticating .Please run `client.py --auth` first." ) UserGameDownloader ( destination , default_user_id if not user_id else user_id , limit ) . get_objects ( ) print ( 'Finished writing files to desired location' )