from typing import Dict
from typing import Any
from typing import List


def set_user_defined_results(
    fha: Dict[str, Any], results: List[float]
) -> Dict[str, Any]:
    """Set the user-defined results for the user-defined calculations.

    This allows the use of the results fields to be manually set to float
    values by the user essentially creating five more user-defined float
    values.

    :param fha: the functional hazard assessment dict.
    :param list results: the list of results.
    :return: fha; the functional hazard assessment dict with updated results.
    :rtype: dict
    """
    _key = ""
    for _idx in [11, 12, 13, 14, 15]:
        try:
            _key = list(fha.keys())[_idx]
            fha[_key] = results[_idx - 11]
        except IndexError:
            fha[_key] = 0

    return fha