from typing import List
from typing import Dict
from functools import reduce


def combine_dictionaries(dicts: List[Dict]) -> Dict:
    """Function that flattens a list of Dict into a single Dictionary. Note that ordering of the list matters,
    because keys will overwrite each other.

    Args:
        dicts (List[Dict])

    Returns:
        Dict
    """
    if not dicts:
        return {}

    return reduce(lambda a, b: {**a, **b}, dicts)