<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def load_result(result_file, options, run_set_id=None, columns=None, columns_relevant_for_diff=set()):
 """ Completely handle loading a single result file. @param result_file the file to parse @param options additional options @param run_set_id the identifier of the run set @param columns the list of columns @param columns_relevant_for_diff a set of columns that is relevant for the diff table @return a fully ready RunSetResult instance or None """

    xml = parse_results_file(result_file, run_set_id=run_set_id, ignore_errors=options.ignore_errors)
    if xml is None:
        return None

    result = RunSetResult.create_from_xml(
        result_file, xml, columns=columns, all_columns=options.all_columns,
        columns_relevant_for_diff=columns_relevant_for_diff)
    result.collect_data(options.correct_only)
    return result