def METHOD_NAME(read_data=dd.defaultDict['read_data'],
                        file_format=dd.defaultDict['file_format'],
                        out_folder=dd.defaultDict['out_folder'],
                        no_raw=dd.defaultDict['no_raw'],
                        start_date=dd.defaultDict['start_date'],
                        end_date=dd.defaultDict['end_date'],
                        impute_dates=dd.defaultDict['impute_dates'],
                        moving_average=dd.defaultDict['moving_average'],
                        make_plot=dd.defaultDict['make_plot'],
                        split_berlin=dd.defaultDict['split_berlin'],
                        rep_date=dd.defaultDict['rep_date'],
                        sanitize_data=dd.defaultDict['sanitize_data']
                        ):
    """! Downloads all data from external sources
    The functions which are called are:
    - getCaseData.get_case_data
    - getPopulationData.get_population_data
    - getVaccinationData.get_vaccination_data
    - getDIVIData.get_divi_data
    Keyword arguments:
    @param read_data True or False. Defines if data is read from file or downloaded. Default defined in defaultDict.
    @param file_format File format which is used for writing the data. Default defined in defaultDict.
    @param out_folder Folder where data is written to. Default defined in defaultDict.
    @param no_raw True or False. Defines if unchanged raw data is saved or not. Default defined in defaultDict.
    @param start_date Date of first date in dataframe. Default 2020-01-01.
    @param end_date Date of last date in dataframe. Default defined in defaultDict.
    @param impute_dates True or False. Defines if values for dates without new information are imputed. Default defined in defaultDict.
    @param moving_average Integers >=0. Applies an 'moving_average'-days moving average on all time series
        to smooth out effects of irregular reporting. Default defined in defaultDict.
    @param make_plot True or False. Defines if plots are generated with matplotlib. Default defined in defaultDict.
    @param split_berlin True or False. Defines if Berlin's disctricts are kept separated or get merged. Default defined in defaultDict.
    @param rep_date True or False. Defines if reporting date or reference date is taken into dataframe. Default defined in defaultDict.
    @param sanitize_data Value in {0,1,2,3}. Redistributes cases of every county either based on regions' ratios or on thresholds and population.
    """
    arg_dict_all = {
        "read_data": read_data, "file_format": file_format,
        "out_folder": out_folder, "no_raw": no_raw}
    arg_dict_data_download = {"start_date": start_date, "end_date": end_date,
                              "impute_dates": impute_dates, "moving_average": moving_average,
                              "make_plot": make_plot}
    arg_dict_cases = {**arg_dict_all, **arg_dict_data_download,
                      "split_berlin": split_berlin, "rep_date": rep_date}
    arg_dict_vacc = {**arg_dict_all, **arg_dict_data_download,
                     "sanitize_data": sanitize_data}
    arg_dict_divi = {**arg_dict_all, **arg_dict_data_download}
    try:
        getCaseData.get_case_data(**arg_dict_cases)
    except Exception as exp:
        print(str(type(exp).__name__) + ": " + str(exp))
        print_error('case')
    try:
        getPopulationData.get_population_data(**arg_dict_all)
    except Exception as exp:
        print(str(type(exp).__name__) + ": " + str(exp))
        print_error('population')
    try:
        getDIVIData.get_divi_data(**arg_dict_divi)
    except Exception as exp:
        print(str(type(exp).__name__) + ": " + str(exp))
        print_error('DIVI')
    try:
        getVaccinationData.get_vaccination_data(**arg_dict_vacc)
    except Exception as exp:
        print(str(type(exp).__name__) + ": " + str(exp))
        print_error('vaccination')