def merge_dicts(*dicts_to_merge: dict):
    """
    Merge multiple dictionaries into one.
    Leaves originals unchanged.

    :param dicts_to_merge: dictionaries to be merged. Multiple dictionaries can be provided.
    :return: copy of merged dictionary (originals are left unchanged).
    """
    result = {}
    for dictionary in dicts_to_merge:
        result.update(dictionary)

    return result