def replace(old: str, _dict: dict) -> str:
    """
    Given a string and a dict, replaces occurrences of the dict keys found in the
    string, with their corresponding values. The replacements will occur in "one pass",
    i.e. there should be no clashes.
    :param str old: string to perform replacements on
    :param dict _dict: replacement dictionary {str_to_find: str_to_replace_with}
    :rtype: str the replaced string
    """
    for key in _dict:
        old = old.replace(key, _dict[key])

    return old