def define_result(result: str, index: int) -> str:
    """
    Rather than having the Team decode this, what if we just told it
    whether it had a win, loss, or draw? Then it wouldn't matter how
    we came to know this, we would just have to inform the team.
    The less that the Team knows about how we determine the match results,
    the less likely it will be that the Team will need to be modified if
    we modify how we represent match results.
    :param result: Game Outcome
    :param index: Team Index
    :return:
    """
    # remove spaces and convert chars to lower case
    result = result.strip().lower()

    possible_results = ('win', 'loss', 'draw')

    if result not in possible_results:
        raise ValueError("ERROR: this is invalid game outcome: {}".format(result))

    if result == 'win' and index == 0:
        return possible_results[0]
    elif result == 'win' and index == 1:
        return possible_results[1]
    elif result == 'loss' and index == 0:
        return possible_results[1]
    elif result == 'loss' and index == 1:
        return possible_results[0]
    else:
        return possible_results[2]