from typing import OrderedDict
from typing import Counter


def ReturnFrequencies(list_of_values):
    """Gives the frequency (%) of each value in a list

    args:
        list_of_values: list of ints. A list of integers to count

    returns:
        frequency_dict: Dict. A dictionary where key corresponds with value
            int the original list and value corresponds with frequency of
            that value.
    """
    frequency_dict = OrderedDict()
    value_counts = Counter(list_of_values)
    total_counts = sum(value_counts.values())
    for key, value in sorted(value_counts.items()):
        frequency_dict[key] = float(value) / total_counts * 100

    return frequency_dict