def merge_dicts(create_dict, iterable):
    """
    Merges multiple dictionaries, which are created by the output of a function and
    an iterable. The function is applied to the values of the iterable, that creates dictionaries
    :param create_dict: function, that given a parameter, outputs a dictionary.
    :param iterable: iterable, on which the function will be applied.
    :return: dict, the created dictionary.
    """
    merged_dict = {}
    for dictionary in map(create_dict, iterable):
        merged_dict = {**merged_dict, **dictionary}

    return merged_dict